CREATE TABLE S(
SNO CHAR(6) PRIMARY KEY,
SN VARCHAR(20) NOT NULL,
AGE TINYINT UNSIGNED NOT NULL,
DEPT VARCHAR(20)
);
INSERT S VALUES('S1','李立勇',20,'CS'),
('S2','刘蓝',23,'IS'),
('S3','周小花',18,'MA'),
('S4','张立伟',19,'IS'),
('S5','王世明',19,'IS'),
('S6','陈思思',19,'MS');
CREATE TABLE C(
CNO VARCHAR(6) PRIMARY KEY,
CN VARCHAR(10) NOT NULL,
CPNO VARCHAR(6)
);
INSERT C VALUES('C1','数据库','C2'),
('C2','离散数学',NULL),
('C3','操作系统','C4'),
('C4','数据结构','C2');
CREATE TABLE SC(
SNO CHAR(6),
CNO VARCHAR(6),
SCORE INT NOT NULL,
CONSTRAINT S_C_P PRIMARY KEY(SNO,CNO),
CONSTRAINT S_F FOREIGN KEY(SNO) REFERENCES S(SNO),
CONSTRAINT C_F FOREIGN KEY(CNO) REFERENCES C(CNO)
);
INSERT SC VALUES('S1','C1',85),
('S1','C2',90),
('S1','C3',89),
('S1','C4',88),
('S2','C2',78),
('S2','C3',85),
('S3','C2',68),
('S3','C3',78),
('S3','C4',75),
('S4','C1',69),
('S4','C2',82),
('S4','C4',73),
('S5','C1',92),
('S5','C4',86);
-- (1)检索学生的所有情况
--(2)检索学生年龄大于等于20岁的学生姓名
--(3) 检索先修课号为C2的课程号。
--(4) 检索选修了课程号C1成绩大于等于90分的所有学生姓名
--(5) 检索学号为S1的学生修读的所有课程名及先修课号
--(6) 检索年龄为23岁的学生所修读的课程名
--(7)检索至少修读了学号为S5的学生修读的一门课的学生的姓名
--(8)查询所有选修了C1号课程的学生姓名
--(9) 检索修读了学号为S4的学生所修读的所有课程的学生的姓名。
--(10) 检索选修所有课程的学生的学号。
--(11) 检索不选修任何课程的学生的学号
--(12)查询选课两门课的学生的学号
--(13) 查询学习课程号为'C2',成绩为第一名的学生的姓名
--(14)在选修C2课程成绩大于该课平均成绩的学生中,
--查询还选C1课程的学生的学号、姓名和C1课程成绩