1.假设学生—课程数据库关系模式如下: S(Sno,Sname,Sage,Ssex) C(Cno

1.假设学生—课程数据库关系模式如下: S(Sno,Sname,Sage,Ssex) C(Cno,第1张

1 select * from S

2 select sname, 2014-Sage from S

3 select sname, sage from S where sage between 20 and 22

4 select * from S order by sdept asc, sage desc

5 select S.sno, sname from S, C, SC where S.sno=SC.sno and SC.cno=C.cno and Cname='数据库

1、select C# from SC where S#='040011'

2、select S#, SN from S where S# in (select S# from SC where G >= 80 and C# in (select C# from C where CN = '数据库概论'))

3、select S#, count(*), avg(G) from SC group by S# having count(*) >2

自己写的,亲测可用。请给分。

3、已知三个关系模式:

学生 S(S#,SNAME,AGE,SEX),其属性的含义为:学号,姓名,年龄,性别;

学习成绩 SC(S#,C#,GRADE) ,其属性的含义为:学号,课程号,成绩;

课程 C(C#,CNAME,TEACHER),其属性的含义为:课程号,课程名,教师。

(1)请用关系代数表达式描述查询:学号为‘S2’的学生所选课程的课程号。

答: Pi C#(Delta S#=‘S2’(S))其中Pi表示投影,Delta 表示选择

(2)完善下面的SQL语句片断。

答:

CREATE TABLE SC(

S# CHAR(10),

C# CHAR(10),

GRADE NUMBER(2),

primary key (S#,C#), /*建立主码约束*/

FOREIGN KEY REFERNCES S(S#), /*在S#列上建立外码约束*/

……

)

(3)用SQL查询块描述下列查询:

学生“李勇”所选选修的课程名。

答: SELECT C.CNAME

FROM S, SC, C

WHERE S. SNAME='李勇'

AND S.S#=SC.S#

AND C.C#=SC.C#

统计每门课程的选课人数。

答:SELECT C.CNAME, COUNT(S.S#)

FROM SC, C, S

WHERE C.C# = SC.C#

AND SC.S# = S.S#

group by C.CNAME

在学生表中插入数据(‘1001’,‘王勇’,‘男’,19)

答:INSERT INTO S VALUES ('1001','王勇','男',19)

COMMIT


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9863745.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存