给出四张表内容如下所示
* 1. 查询“001”课程比“002”课程成绩高的所有学生的学号
分析:考察条件查询且查询内容在同一张表(成绩表)上,条件为同一个学生“001”课程比“002”课程成绩高,所以相当于要有两张表,一张为“001”课程对应的所有学生学号和成绩,一张为“002”课程对应的所有学生学号和成绩,然后从这个整体中找到满足条件的学号。
SELECT 后加查找内容,FROM后加查找范围,WHERE后加条件
SELECT a.sid
FROM (SELECT sid,score FROM sc WHERE cid="001") as a ,
(SELECT sid, score FROM sc WHERE cid="002") as b
WHERE a.score > b.score AND a.sid=b.sid
* 2. 查询平均成绩大于60分的同学的学号和平均成绩
分析:考察聚合函数(avg())、分组查询
聚合函数:统计总数、平均数、最大值、最小值等
分组查询:
SELECT 字段1,AVG(字段) FROM tablename GROUP BY 字段1 HAVING 由聚合