作者daidaibruce (低调)
看板Database
标题Re: [SQL ] 语法问题
时间Thu Apr 21 23:28:30 2011
※ 引述《minimatsumi (sugar)》之铭言:
: 想请版上各位先进帮我看看写对吗?
: 现在资料库中有两个资料表
: S资料表
: 学号 姓名 性别 科系
: 9901 AA 男 生物系
: 9902 BB 男 化学系
: 9903 CC 女 物理系
: R资料表
: 课程代码 课程名称 学号
: C01 微积分 9901
: C01 微积分 9902
: C02 英文 9901
: C02 英文 9902
: C03 民法 9901
: (1)列出BB所修的课程名称及课程代码
: SELECT 课程名称, 课程代码
: FROM R
: WHERE 学号 = '9902'
: (2)列出共修三门课以上的学生姓名及修课数
: SELECT S.学生姓名,COUNT(R.课程代码) AS 修课数
: FROM S, R
: WHERE S.学号 = R.学号
: GROUP BY S.学号
: HAVING COUNT(R.课程代码)>=3
: (3)查询没有选修任何课程的学生姓名及其科系
: SELECT S.学生姓名, S.科系
: FROM S, R
: WHERE S.学号(+) = R.学号
: GROUP BY S.学号
: HAVING 课程代码 is null
: 谢谢大家 :)
第三题
不确定结果对不对
不过select栏位与GROUP BY不符,有些资料库不允许这样下
直接用 not in 就可以解决了吧
我相信老师会算你对的XD
select s.学生姓名,s.科系
from s
where s.学号 not in (select 学号 from R)
不过这种写法效率不好就是...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.165.69.59
1F:推 minimatsumi:谢谢~我翻书刚刚也学到NOT IN 04/22 00:08