mysql中not exists的用法是什么

mysql中,“not exists”是不存在的意思,在where后进行条件判断,后面紧跟子查询语句,根据子查询语句有没有结果来进行判断,语法为“Select*from TableA a where Not Exists (子查询语句)”。

mysql中not exists的用法是什么

本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。

mysql中not exists的用法是什么

这里着重介绍Not Exists(Exists用法类似),Not Exists 不存在

用法:

Select  * from TableA  a  where Not Exists (Select * from TableB  b where a.id=b.id and a.name=b.name);

1、Not Exists 用在where之后,且后面紧跟子查询语句(带括号);

2、Not Exists(Exists) 并不关心子查询的结果具体是什么,只关心子查询有没有结果;

3、这条语句的意思,把TableA的记录逐条代入到子查询,如果子查询结果集为空,说明不存在,那么这条TableA的记录出现在最终结果集,否则被排除;

用法:

Select * from TableA a where Not Exists (Select 1 from TableB);

这条语句子查询无论什么情况下都不为空,导致最终的结果集为空,因为TableA中每条记录对应的子查询都有结果集,表示都存在,所以最终结果集为空;

推荐学习:mysql视频教程

以上就是mysql中not exists的用法是什么的详细内容,更多请关注其它相关文章!