数据库语言sql作业解答.docx

想预览更多内容,点击预览全文

申明敬告:

本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己完全接受本站规则且自行承担所有风险,本站不退款、不进行额外附加服务;如果您已付费下载过本站文档,您可以点击这里二次下载

文档介绍

Prepared on 21 November 2021

Prepared on 21 November 2021

数据库语言SQL作业解答

SQL语言习题

1. 关系数据模型如下:

学生S(SNO,SN,SEX,AGE)

课程C(CNO,CN,PCNO) PCNO为直接先行课号

选课SC(SNO,CNO,GR) GR为课程考试成绩

用SQL写出查询程序:

选修课程“DB”的学生姓名SN。

方法1. SELECT SN FROM S WHERE SNO IN ( SELECT SNO FROM SC WHERE CNO IN ( SELECT CNO /* = */ FROM C WHERE CN = ‘DB’ ) );

方法2. SELECT SN FROM S, SC, C WHERE S.SNO=SC.SNO

AND SC.CNO=C.CNO

AND CN = “DB”;

2. 关系数据模型如下:

学生S(SNO,SN,SEX,AGE)

课程C(CNO,CN,PCNO) PCNO为直接先行课号

选课SC(SNO,CNO,GR) GR为课程考试成绩

用SQL写出查询程序:

查询课程名和它的直接先行课的课程名以及它的间接先行课的课程名。

SELECT CN, CX.CN, CY.CN FROM C,C CX,C CY WHERE C.PCNO=CX.CNO

AND CX.PCNO=CY.CNO

[例41]找出每个学生超过他选修课程平均成绩的课程号。 SELECT Sno,Cno FROM SC x

WHERE Grade >= ( SELECT AVG(Grade) FROM SC y WHERE y.Sno=x.Sno );

3. 关系数据模型如下 P84 例4.26

学生S(SNO,SN,SEX,AGE)

课程C(CNO,CN,PCNO) PCNO为直接先行课号

最近下载