《SQL面试50题》刷题笔记 day5(知识点:操作符not in、联结)

今天忙,还有工作要做,上午睡懒觉了,下午搞懂了问题6的边边角角小知识,所以今天只做一个题打卡。

问题7 查询没学过"张三"老师讲授的任一门课程的学生姓名
(与问题5相关)
考虑到学生表student和成绩表score 左联结后有空值,用操作符not in做否 实现查询。

 select s.* from student s where sid not in
(select 
s.sid 
from 
student s, course c, score sc, teacher t
where 
t.tid=c.tid and c.cid=sc.cid and sc.sid=s.sid 
and t.tname='张三');

查询结果:

+-----+--------+------------+------+
| sid | sname  | sbirth     | ssex |
+-----+--------+------------+------+
| 06  | 吴兰   | 1992-03-01 ||
| 08  | 王菊   | 1990-01-20 ||
+-----+--------+------------+------+

括号()里是问题5的查询语句。

气死了,我白天太能睡了,不要熬夜了早睡早起。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值