SQL经典练习

创建以下三个表:
学生表: Student(Sno,Sname,Ssex,Sbirthday,Sage,Sdept)
Student 由学号 (Sno)、姓名 (Sname)、性别 (Ssex)、出生日期 (Sbirthday)、年龄 (Sage),
所在系 (Sdept) 五个属性组成,其中 Sno 为主键.
课程表: Coures(Cno,Cname,Cpno,Ccredit)
Coures 由课程号 (Cno)、课程名 (Cname)、选修课号 (Cpno)、学分 (Ccredit) 四个属性组成,
其中 Cno 为主键.
学生选课表: SC(Sno,Cno,Grade)
SC 由学号 (Sno)、 课程号 (Cno)、 成绩 (Grade) 三个属性组成, 主键为 (Sno,Cno).
按照以上三个表来做如下的习题:
1.查找全体学生的学号与姓名
2.查找全体学生的姓名、学号与所在系
3.查找全体学生的详细纪录
4.查找全体学生的姓名和其出生日期
5.查找全体学生的姓名、出生日期和所有系,要求用小写字母表示所有系名
6.查找全体学生的姓名、出生日期和所有系,要求给这几列起别名
7.查找选修了课程的学生学号(不能重复)
8.查找计算系全体学生的名单
9.查找所有年龄在20岁以下的学生姓名和其年龄(2种做法)
10.查找考试成绩有不及格的学生的学号(不能重复)
11.查找年龄在20--30岁(包括20岁和23岁)之间的学生的姓名、系别和年龄
12.查找年龄不在20--30岁(包括20岁和23岁)之间的学生的姓名、系别和年龄
13.查找信息系、数学系和计算机系学生的姓名与性别(用in做)
14.查找不是信息系、数学系,也不是计算机系的学生的姓名与性别(用not in做)
15.查找学号以为95001开头的学生的详细情况(用2种方法做)
16.查找所有以“刘”开头的学生的姓名、学号和性别
17.查找以“欧阳”开头的且三个汉字的学生的姓名
18.查找名字中第2个字为“阳”字的学生的姓名和学号
19.查找所有不以“刘”开头的学生姓名
20.查找以“C”开头的课程的课程号和学分
21.查找以“H”开头,且倒数第三个字符为“T”的课程的课程号和学分
22.某些学生选修课程后没有参加考试,所以有选课纪录,但没有考试成绩。查找缺少成绩的学生的学号和相应
的课程号
23.查找除了无成绩的学生的学号和课程号
24.查找计算机系年龄在20岁以下的学生姓名
25.查找是计算机系 或者是 数学系 或者是 信息系的学生姓名和性别
26.查找选修了3号课程的学生的学号与其成绩,其查找结果按分数的降序排列
27.查找全体学生情况,查找结果按所在系的系号升序排列,同一系中的学生按年龄降序排列
28.查找学生总人数
29.查找选修了课程的学生人数
30.计算1号课程的学生平均成绩