casio1374633 发表于 2015-09-15 17:49

[急求]sql一个题目的解答,真的是急求!

==========================================================
学生:S(SNO,SN SEX,AGE)
课程:C(CNO,CN)
选课:SC(SNO,CNO,G)G为课程考试成绩
(1)用SQL写出查询语言,查询“物理信息”课程成绩在80分以上的学生的姓名;
(2)将选修课程“物理信息”的学生学号(SNO),姓名(SN)建立视图SDB。
(3)查询所有学生都选修的课程名CN。
(4)在学生选课关系SC中,把“语文”课的成绩提高20%,且提高后的最高分不能高于100分。
==========================================================
有谁能帮忙啊??

csoho2000 发表于 2015-09-23 14:18

本帖最后由 csoho2000 于 2015-09-23 14:19 编辑

1.
select s.sn from s where s.sno in (select sno from sc where c>80 and cno in (select cno from c where cn="物理信息"))
不知道对不对:dizzy::dizzy::dizzy:

asdf2110 发表于 2015-09-24 16:56

1.
select s.sn from s, c, sc
where s.sno = sc.sno and c.cno = sc.cno and c.cn = '物理信息' and sc.g > 80;
2.
create view SDB as
select s.sno, s.sn from s, c, sc
where s.sno = sc.sno and c.cno = sc.cno and c.cn = '物理信息';
3.
select cn from c where cno in
(select cno from sc group by cno having count(*) = (select count(*) from s));
4.
update sc set g = (case when g * 1.2 >= 100 then 100 else g * 1.2 end) where sc.cno = (select cno from c where cn = '语文');

shang2010 发表于 2015-09-24 21:09

学生还是练习商城购物订单系统比较合适,场景也更适合数据库发挥

学生选课系统,当年学习竟然被寡人用一个大数组给建模处理了。。
页: [1]
查看完整版本: [急求]sql一个题目的解答,真的是急求!