mysql第三天作业
1、将所有的课程的名称以及对应的任课老师姓名打印出来,如下:
SELECT cname,tname FROM course LEFT JOIN teacher ON teacher.tid=course.cid;
2、查询学生表中男女生各有多少人? 如下:
SELECT gender,COUNT(sid) 人数 from student GROUP BY gender;
3、查询物理成绩等于100的学生的姓名?如下:
SELECT sid,sname FROM student WHERE sid in (SELECT student_id from score WHERE course_id=2 and num=100);
4、查询平均成绩大于八十分的同学的姓名和平均成绩,如下:
SELECT sname 姓名,平均成绩 FROM student INNER JOIN (SELECT student_id,AVG(num) 平均成绩 FROM score GROUP BY student_id HAVING AVG(num)>80)AS s ON student.sid=s.student_id
SELECT sname,AVG(num) FROM student INNER JOIN score on student.sid=score.student_id
GROUP BY student_id having AVG(num)>80;
5、查询所有学生的学号,姓名,选课数,总成绩
SELECT sid,sname,选课数,总成绩 FROM student LEFT JOIN (SELECT student_id,COUNT(sid) 选课数,SUM(num) 总成绩 FROM score GROUP BY student_id)AS s ON student.sid=s.student_id
SELECT student.sid,sname,COUNT(student.sid),SUM(num) FROM student INNER JOIN score on score.student_id=student.sid
GROUP BY student_id;
6、查询姓李老师的个数
SELECT COUNT(tname) from teacher WHERE tname like '李%';
7、查询没有报李平老师课的学生姓名
SELECT sid,sname FROM student WHERE sid NOT in (SELECT DISTINCT student_id FROM score WHERE course_id in (SELECT cid FROM course WHERE teacher_id=(SELECT tid FROM teacher WHERE tname="李平老师")))
SELECT sname FROM student WHERE sid not in
(SELECT DISTINCT student_id FROM score WHERE course_id in
(SELECT cid FROM teacher INNER JOIN course on teacher.tid=course.teacher_id
WHERE tname LIKE '李平%'));
8、查询物理课程比生物课程高的学生的学号
SELECT s1.student_id FROM (SELECT * FROM score WHERE student_id in (SELECT student_id FROM score WHERE course_id=2 OR course_id=1 GROUP BY student_id HAVING COUNT(sid)=2) AND course_id=1)AS s1
LEFT JOIN
(SELECT * FROM score WHERE student_id in (SELECT student_id FROM score WHERE course_id=2 OR course_id=1 GROUP BY student_id HAVING COUNT(sid)=2) AND course_id=2)AS s2
ON s1.student_id=s2.student_id
WHERE s1.num<s2.num
9、查询没有同时选修物理课程和体育课程的学生姓名
SELECT sid,sname FROM student WHERE sid NOT in (SELECT student_id FROM score WHERE course_id=2 or course_id=3
GROUP BY student_id HAVING COUNT(course_id)=2)
10、查询挂科超过两门(包括两门)的学生姓名和班级
SELECT sname FROM student WHERE sid in (SELECT student_id FROM score WHERE num<60 GROUP BY student_id HAVING COUNT(course_id)>=2)
11 、查询选修了所有课程的学生姓名
SELECT sname FROM student WHERE sid in (SELECT student_id FROM score GROUP BY student_id HAVING COUNT(course_id)=(SELECT COUNT(cid) FROM course))
12、查询李平老师教的课程的所有成绩记录
SELECT course_id 课程,num 分数 FROM score WHERE course_id in(SELECT cid FROM course WHERE teacher_id=(SELECT tid FROM teacher WHERE tname="李平老师"))
13、查询全部学生都选修了的课程号和课程名
SELECT course_id,COUNT(course_id) FROM score GROUP BY course_id HAVING COUNT(course_id)=(SELECT COUNT(sid) FROM score)
mysql第三天作业的更多相关文章
- 第三周作业-课本&&视频学习
<网络攻防技术与实践>第三周作业 Part I 寻找自己留在互联网上的足迹并消除隐私 1.1 google/baidu搜索自己的qq号 搜索结果如图,搜到的有用信息其实就是图上这么几条,能 ...
- 耿丹CS16-2班第三次作业汇总
-- Deadline: 2016-10-12 22:48 -- 作业内容: 1.实验2-6 猜数字游戏 2.实验2-7 判断能否为三角形 3.实验2-8 个人所得税计算器 -- 第三次作业总结: 1 ...
- JAVA第三周作业(从键盘输入若干数求和)
JAVA第三周作业(从键盘输入若干数求和) 在新的一周,我学习了JAVA的IO编程.下面的代码实现了从键盘输入若干数求和的目标.import java.util.Scanner; public cla ...
- 第三次作业:caculator
第三次作业 作业链接 ********* 遇到的问题: Scan类: 队列的使用方法不了解,上网查询并自己练习了一下才初步了解,才运用到作业 . 判断数字用的 if (input[i] >= ' ...
- HTML第三天作业做的表格
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...
- 第三次作业——《K米评测》
第三次作业--<K米评测> 一.调研.评测 上手体验 APP的图标做的不错,一眼就知道和KTV唱歌相关的 点进去就是连接包箱的界面和直播界面,把软件最重要的两个功能展示出来了,一目了然 热 ...
- PHP的学习--连接MySQL的三种方式
记录一下PHP连接MySQL的三种方式. 先mock一下数据,可以执行一下sql. /*创建数据库*/ CREATE DATABASE IF NOT EXISTS `test`; /*选择数据库*/ ...
- 软件工程(QLGY2015)第三次作业点评(含成绩)
相关博文目录: 第一次作业点评 第二次作业点评 第三次作业点评 团队信息 本页点评团队1-22,其他组见:http://www.cnblogs.com/xiaozhi_5638/p/4490764.h ...
- 第三次作业随笔(new)包含了补作业
第三次作业的题目:http://www.cnblogs.com/fzuoop/p/5187275.html 第一次看到题目的时候觉得应该是挺简单的,只要把输入的那一串东西挨个判断,用数列的方法,如果碰 ...
随机推荐
- ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
1 ERROR: transport error 202: bind failed 2 ERROR: JDWP Transport dt_socket failed to initialize, TR ...
- Iptables规则执行顺序详解
1.The first is the mangle table which is responsible for the alteration of quality of service bits ...
- Java 设计模式01 - 简单工厂模式
先要学习设计模式之前的先看看一些基础 UML类图简单说明 可以先看看我的这篇博客: UML类图简单说明,学习编程思路的必会技能 接下来才是重点,开始我们的旅程吧. 一.UML类图展示 我们要用简单工厂 ...
- 尼康D90多点对焦
11点对焦 上市时间 2008 类型 单反数码相机 对焦方式 单区域AF:在选择区域内只对焦于目标可以从11个AF点传感器中的任意一个中选择 动态区域AF:对焦于选择区域的目标上,如果目标离开原来位置 ...
- Ubuntu14.04编译Android5.1.1源码
1.Ubuntu环境配置 硬盘:120G 内存:4G 注:配置很重要,直接影响能否编译成功. 2.安装JDK sudo apt-get update sudo apt-get install open ...
- 你一定喜欢看的 Webpack 2.× 入门实战
from:https://www.jianshu.com/p/b83a251d53db?utm_campaign=maleskine&utm_content=note&utm_medi ...
- 模拟ORA-26040: Data block was loaded using the NOLOGGING option
我们知道通过设置nologging选项.能够加快oracle的某些操作的运行速度,这在运行某些维护任务时是非常实用的,可是该选项也非常危急,假设使用不当,就可能导致数据库发生ORA-26040错误. ...
- 如何使用C#操作WinAPI
Windows API是对Windows操作系统的API函数,在C#中调用Windows API的实质是托管代码对非托管代码的调用. 主要使用的格式就是: using System.Runtime.I ...
- 7.15;linux命令
麦克维瀑布 https://farm5.staticflickr.com/4269/34749113172_d6c1ba274a_k.jpg ----------------------------- ...
- 【BZOJ3190】[JLOI2013]赛车 单调栈+几何
[BZOJ3190][JLOI2013]赛车 Description 这里有一辆赛车比赛正在进行,赛场上一共有N辆车,分别称为个g1,g2……gn.赛道是一条无限长的直线.最初,gi位于距离起跑线前进 ...