使用EXISTS语句注意点
Posted 美好的明天
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用EXISTS语句注意点相关的知识,希望对你有一定的参考价值。
1.使用EXISTS语句,其目标列一般用“*”,因为带EXISTS的子查询只返回真值或假值,给出列名无实际意义。
2.使用EXISTS语句一定要注意上下两个表之间要建立联系。
例如,查询所有选修了1号课程的学生姓名。
错误做法是:
select Sname From student where Exists ( select * from SC WHERE Cno=‘1‘; )
因为二者之间没有建立联系。所有查询失败。
正确做法是
select Sname From student where Exists ( select * from SC WHERE Sno=student.Sno AND Cno=‘1‘; )
2,使用NOT EXISTS 表示不存在。
例2:查询没有选修1号课程的学生名称。
select Sname From student where NOT Exists ( select * from SC WHERE Sno=student.Sno AND Cno=‘1‘; )
以上是关于使用EXISTS语句注意点的主要内容,如果未能解决你的问题,请参考以下文章
在sql语句多表连接中,in、exists、join哪个效率更高一点?