Welcome to aparke’s blog!
1: (选择表中的若干列) 求全体学生的学号、姓名、性别和年龄。
SELECT SNO,SNAME,SSEX,SAGE |
2: (不选择重复行) 求选修了课程的学生学号。
SELECT DISTINCT SNO |
3: (使用表达式) 求全体学生的学号、姓名和出生年份。
SELECT SNO,2019-SAGE |
4: (使用列的别名) 求学生的学号和出生年份,显示时使用别名“学号”和“出生年份”。
SELECT SNO AS "学号",2019-SAGE AS "出生年份" |
5: (比较大小条件) 求年龄大于19岁的学生的姓名和年龄。
SELECT SNAME,SAGE |
6: (确定范围条件) 求年龄在19岁与22岁(含20岁和22岁)之间的学生的学号和年龄。
SELECT SNO,SAGE |
或者SELECT SNO,SAGE
FROM student
WHERE SAGE>=19 AND SAGE <=22;
7: (确定集合条件) 求在下列各系的学生信息:数学系、计算机系。
SELECT * |
或者SELECT *
FROM student
WHERE SDEPT="MA"
UNION
SELECT *
FROM student
WHERE SDEPT="CS";
8: (匹配查询) 求姓名长度至少是三个汉字且倒数第三个汉字必须是“马”的学生。
SELECT * |
9: (涉及空值查询) 求缺少学习成绩的学生的学号和课程号。
SELECT SNO,CNO |
10:(集函数) 求选修了课程的学生人数。
SELECT COUNT( DISTINCT sno) |
11:(分组查询) 求各门课程的平均成绩与总成绩。
SELECT SNO, AVG(score),SUM(score) |
12:(分组查询) 输入以下查询语句并执行,观察出现的其结果并分析其原因。
SELECT SNAME,SDEPT,COUNT(*)FROM STUDENT |
13:(自然连接查询) 求学生号以及其选修课程的课程号和成绩,但查询结果中只能有一个SNO字段。
SELECT student.SNO,course.CNO,SCORE |
14:(连接查询与表的别名) 求选修了课程的学生的学生姓名、课程号和成绩。
SELECT SNAME,c.CNO,SCORE |
15:(自身连接查询) 求年龄大于 ’李丽’ 的所有学生的姓名、系和年龄。
SELECT a.SNAME,a.SDEPT,a.SAGE |
16:(复合条件查询) 求选修了课程名为 ’数据结构’ 的学生的学号和姓名。
SELECT student.SNO,SNAME |
或者SELECT student.sno,student.sname
from student,course,score
where student.sno=score.sno
and course.cno=score.cno
and score.cno in (select cno from course where cname="数据结构");
17:(排序)求选修了课程名为 ’数据结构’的学生的姓名和成绩,查询结果按成绩降序排序。
SELECT sname,score |
18:(集合查询) 列出所有教师和学生的姓名和性别。
SELECT SNAME,SSEX |