问题 问答题

设数据库中有四个关系
课程关系C(C#,CNAME,TNAME)
学生关系S(S#,SNAME,AGE,SEX)
选课关系SC(S#,C#,SCORE)
其中课程关系中各属性分别表示为课程号,课程名,以及相应的课程任课老师名;学生关系中各属性分别为学号,学生姓名,年龄以及性别;用SQL语句完成下面的各个问题:
①创建学生关系S,其中S#为主码,SEX只能取F和M两个值,其他的属性不为空
②检索年龄小于17岁的女生的学号和姓名
③检索WANG同学不学的课程的课程号

答案

参考答案:①使用CREATE建立表,使用CHECK短语来指定列值应该满足的条件。
CREATE TABLE SC
(S#char(10)PRIMARY KEY,
SNAME char(20)NOT NULL,
AGE int NOT NULL,
SEX char(2)check(SEX in(’F’,’M’));

SELECT S#,SNAME
FROM S
WHERE AGE<17 AND SEX=’F’;

SELECT C#
FROM C
WHERE NOT EXISTS
(SELECT*
FROM S,SC
WHERE S.S#=SC.S#AND SC.C#=C.C# AND SNAME=’WANG’);

单项选择题
单项选择题 A1型题