简单查询
1. 查询全体学生的学号与姓名
SELECT
Sno,Sname FROM Students;
2. 查询全体学生的学号、姓名、性别、年龄。
SELECT Sno,Sname,Ssex,Sage
FROM Students;
3. 查询全体学生的学号、姓名,并为原来的英文列名设置中文列别名。
SELECT Sno As ‘学号’,Sname
As ‘姓名’ FROM Students;
4. 查询全体学生的选课情况,其成绩列值都加5,并为各列设置中文的别名
SELECT Sno As
‘学号’,Cno As ‘课程号’,Grade + 5,As ‘成绩’FROMEnrollment;
5. 查询学生选课成绩大于80分的学生学号、课程号、成绩。
SELECT * FROMEnrollmentWHERE Grade
> 80;
6. 查询数学系全体学生的学号、姓名。
SELECT Sno, Sname
FROM Students WHERE Sdept = ‘math’;
7. 查询学生选课成绩在80~90分之间的学生学号、课程号、成绩。
SELECT
Sno,Cno,Grade FROMEnrollment WHERE Grade BETWEEN 80 AND 90;
8. 查询学生年龄不在20~30之间的学生学号、姓名、所在系。
SELECT Sno, Sname,SdeptFROM Students WHERE Sage NOT BETWEEN 20 AND 30;
9. 查询数学系、计算机系、艺术系学生的学号、姓名。
SELECT Sno, Sname
FROM Students WHERESdept
IN (‘math’,’computer’,’art’);
10. 查询既不是数学系、计算机系,也不是艺术系学生的学号、姓名。
SELECT Sno, Sname
FROM Students WHERESdept
NOT IN (‘math’,’computer’,’art’);
11. 查找姓名的第二个字符是u并且只有三个字符的学生的学号、姓名。
SELECT Sno, Sname
FROM Students WHERE Sname LIKE ‘u’ ;
12. 查找姓名以S开头的所有学生的学号、姓名。
SELECT Sno, Sname
FROM Students WHERE Sname LIKE ‘s%’;
13. 查找姓名以S、D或J开头的所有学生的学号、姓名。
SELECT Sno, Sname
FROM Students WHERE Sname LIKE ‘[SDJ]%’;
14. 查找姓名不是以S、D或J开头的所有学生的学号、姓名。
SELECT Sno, Sname
FROM Students WHERE Sname LIKE ‘[^SDJ]%’;
15. 查询无考试成绩的学生的学号和相应的课程号。
SELECT Sno,Cno FROMEnrollment WHERE Grade IS NULL;
16. 查询前置课程不为空的课程号、课程名。
SELECT Cno, Sname
FROMCoursesWHEREprecno IS not NULL;
17. 查询计算机系年龄在18岁以上的学生学号、姓名。
SELECT Sno,Sname
FROM Students WHERE Sdept = ‘Computer’AND Sage >18;
18. 求选修了C1课程或C2课程的学生学号、成绩。
SELECT
Sno,Grade FROM EnrollmentWHERE Cno = ‘c1’OR Cno = ‘c2’;
19. 求学生的总人数
SELECT COUNT (*) AS
‘学生总人数’FROM Students;
20. 求选修了课程C1的学生人数
SELECT COUNT
(DISTINCT Sno) AS ‘选修课程的人数’FROMEnrollment WHERE Sno =’C1’;
21. 求选修了C1课程的学生的平均成绩。
SELECT AVG (Grade)
AS ‘平均成绩’FROMEnrollment WHERE Cno = ‘C1’;
22. 求20010102号学生的考试总成绩之和。
SELECT SUM (Grade)
AS ‘20010102考试总成绩’FROMEnrollment WHERE Sno = ‘20010102’;
23. 选修了C1课程的学生的最高分和最低分
SELECT MAX (Grade)
AS ‘最高分’,MIN (Grade) AS ‘最低分’FROMEnrollment WHERE Cno = ‘C1’;
24. 求选修每门课程的学生人数。
SELECT Cno AS ‘课程号’,COUNT (Sno) AS ‘选修人数’FROMEnrollment GROUP BY Cno;
25. 求每个学生的学号和各门课程的总成绩。
SELECT Sno AS ‘学号’,SUM (Grade) AS ‘总成绩’’FROMEnrollment GROUP BY Sno;
26. 求选修课程超过2门课的学生的学号、平均成绩,选修的门数。
SELECT Sno AS ‘学号’,AVG (Grade) AS ‘平均成绩’,COUNT (Sno) AS ‘总成绩’FROMEnrollment GROUP BY Sno
HAVING COUNT (*) >= 2;
27. 查询所有学生的行,并按学生的年龄值从小到大排序。
SELECT * FROM
Students ORDER BY Sage;
28. 查询选修了C1课程的学生的学号和成绩,查询结果按成绩降序排列。
SELECT Sno,Grade FROM EnrollmentWHERE
Cno = ‘c1’ORDER BY Grade DCES;