sql not in 与not exists使用中的细微差别
上面两个简单的Sql,我们从表面理解,查询的最终结果应该是一样的,但实际结果却和我们想象的不一样
第一条sql查询的结果有一条数据
第二条sql查询的结果却为空
原因:
not exists的子查询,对于子查询不返回行和子查询返回行的查询结果是有区别的
这些细小的差别千万不要被我们所忽视,一旦项目庞大了,想跟踪到具体的错误所花费的时间也是可观的。尽量把这些不必要的错误扼杀在摇篮里。
啰嗦了,呵呵。
上面两个简单的Sql,我们从表面理解,查询的最终结果应该是一样的,但实际结果却和我们想象的不一样
第一条sql查询的结果有一条数据
第二条sql查询的结果却为空
原因:
not exists的子查询,对于子查询不返回行和子查询返回行的查询结果是有区别的
这些细小的差别千万不要被我们所忽视,一旦项目庞大了,想跟踪到具体的错误所花费的时间也是可观的。尽量把这些不必要的错误扼杀在摇篮里。
啰嗦了,呵呵。
相关文章
sqlserver中delete、update中使用表别名和oracle的区别
之所以要用别名,是因为where条件中需要用到子查询写一些条件,下面不写那么复杂,仅说明一下问题2013-03-03SQL Server误区30日谈 第20天 破坏日志备份链之后,需要一个完整备份来重新开始日志链
事务日志备份会备份自上次事务日志备份以来所有的事务日志(如果从来没有过日志备份的话,那就从上一次完整备份开始)。有好几种类型的操作会中断事务日志的连续性,也就是说除非重新开始新的日志链,SQL Server无法再进行日志备份2013-01-01
最新评论