如何查找不在表里的数据?利用left/right/inner join和is null
题目
有两张表:学生表”:姓名,学号(主键);“近视学生表”:序号,学生学号(主键)。(“学生表”表中的学号与“近视学生”表中的学生学号一一对应)
请问 不是 近视眼的学生都有谁?
思路
1.确定所要查询的字段出自什么表
近视信息在“近视学生”表里,“学生姓名”在“学生”表里。
2.确定使用什么联结
因为是要查询在“学生表”里的数据,但不在“近视学生”表里的数据,因此选择左连接。
3.两个表联结条件是什么?
因为“学生表”表中的学号与“近视学生”表中的学生学号一一对应,因此联结两表的关键依据分别为“学号”和“学生学号”
语句
select a.姓名 as 不近视的学生名单
from 学生表 as a
left join 近视学生表 as b