sql not in 与not exists使用中的细微差别

2020-07-10 08:13:47易采站长站整理

上面两个简单的Sql,我们从表面理解,查询的最终结果应该是一样的,但实际结果却和我们想象的不一样


第一条sql查询的结果有一条数据


第二条sql查询的结果却为空


 原因:


not exists的子查询,对于子查询不返回行和子查询返回行的查询结果是有区别的


这些细小的差别千万不要被我们所忽视,一旦项目庞大了,想跟踪到具体的错误所花费的时间也是可观的。尽量把这些不必要的错误扼杀在摇篮里。


啰嗦了,呵呵。


上面两个简单的Sql,我们从表面理解,查询的最终结果应该是一样的,但实际结果却和我们想象的不一样


第一条sql查询的结果有一条数据


第二条sql查询的结果却为空


 原因:


not exists的子查询,对于子查询不返回行和子查询返回行的查询结果是有区别的


这些细小的差别千万不要被我们所忽视,一旦项目庞大了,想跟踪到具体的错误所花费的时间也是可观的。尽量把这些不必要的错误扼杀在摇篮里。


啰嗦了,呵呵。

您可能感兴趣的文章:php数组查找函数in_array()、array_search()、array_key_exists()使用实例SQL查询中in和exists的区别分析mysql not in、left join、IS NULL、NOT EXISTS 效率问题记录UCenter info: MySQL Query Error SQL:SELECT value FROM [Table]vars WHERE noteexistsmysql insert if not exists防止插入重复记录的方法Oracle In和exists not in和not exists的比较分析MySQL: mysql is not running but lock exists 的解决方法sql语句优化之用EXISTS替代IN、用NOT EXISTS替代NOT IN的语句SQL SERVER中关于exists 和 in的简单分析

相关文章 大家在看