一、下面进行一些比较典型的查询例子:
1.在教学管理JXGL数据库中进行如下操作:
(1) 求选修了数学的学生的学号和姓名。
SELECT DISTINCT SC.Sno,Sname
FROM STUDENT,SC
WHERE Cno='2'AND SC.Sno=STUDENT.Sno;
(2) 求数学课程成绩高于李勇的学生学号和成绩。
SELECT DISTINCT SC.Sno,Grade
FROM STUDENT,SC
WHERE Cno='2'AND Grade>=92 AND SC.Sno=STUDENT.Sno;
(3) 求其他系中年龄小于计算机系年龄最大者的学生。
SELECT *
FROM STUDENT
WHERE Sage>ALL(SELECT Sage
FROM STUDENT
WHERE Sdept='CS'
)AND Sdept!='CS';
(4) 求其他系中比计算机系学生年龄都小的学生。
SELECT *
FROM STUDENT
WHERE Sage<ANY(SELECT Sage
FROM STUDENT
WHERE Sdept='CS'
)AND Sdept!='CS';
(5) 求选修了数学课的学生姓名。
SELECT Sname
FROM STUDENT
WHERE EXISTS(SELECT *
FROM SC
WHERE Cno='2' AND SC.Sno=STUDENT.Sno);
(6) 求没有选修数学课的学生姓名。
SELECT Sname
FROM STUDENT
WHERE NOT EXISTS
( SELECT *
FROM SC
WHERE Cno='2' AND SC.Sno=STUDENT.Sno);
(7) 查询选修了全部课程的学生的姓名