开发中最好使用not exists 取代not in
Posted yangxiaohui227
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了开发中最好使用not exists 取代not in相关的知识,希望对你有一定的参考价值。
开发中使用not in可能会存在致命的错误,在子查询中,如果存在空值,not in返回的数据就是空了,如下创建2张数据表:
user表:
部门表:
现在要查询没有分配到用户的部门有哪些,使用not in,如下(可见返回空值):
使用not exists 结果如下:
not exisit的用法常见错误写法:
以上是关于开发中最好使用not exists 取代not in的主要内容,如果未能解决你的问题,请参考以下文章
MySQL atomic insert-if-not-exists 具有稳定的自动增量
Class StatusesTableSeeder does not exist 如何解决
SpringBoot+Thyemleaf开发环境正常,打包jar发到服务器就报错Template might not exist or might not be accessible
Google Chrome 插件开发: 无法建立连接, 接收端不存在. Could not establish connection. Receiving end does not exist