为了账号安全,请及时绑定邮箱和手机立即绑定

sql语句not in 和not exist各自的用法和区别 ?

sql语句not in 和not exist各自的用法和区别 ?

宝慕林4294392 2018-10-25 10:06:04
sql语句not in 和not exist各自的用法和区别 
查看完整描述

1 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

in 和 exists也是很好区别的.

in 是一个集合运算符.

a in {a,c,d,s,d....}

这个运算中,前面是一个元素,后面是一个集合,集合中的元素类型是和前面的元素一样的.

而exists是一个存在判断,如果后面的查询中有结果,则exists为真,否则为假.

in 运算用在语句中,它后面带的select 一定是选一个字段,而不是select *.

比如说你要判断某班是否存在一个名为"小明"的学生,你可以用in 运算:

"小明" in (select sname from student)

这样(select sname from student) 返回的是一个全班姓名的集合,in用于判断"小明"是否为此集合中的一个数据;

同时,你也可以用exists语句:

exists (select * from student where sname="小明")

查看完整回答
反对 回复 2018-11-01
  • 1 回答
  • 0 关注
  • 3304 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信