首页 > 数据库技术 > 详细

T-SQL not in 遇到 null 暗含的陷阱

时间:2016-01-28 12:33:41      阅读:239      评论:0      收藏:0      [点我收藏+]

下面有两个T-SQL,乍看之下以为是等效的,实际却不是这样

                         SELECT orderid1 ,
                                LocalCost ,
                                supplyGoodsName ,
                                buyersgoodsid ,
                                JSitId ,
                                GSitId
                         FROM   csc_result WITH ( NOLOCK )
                         WHERE  [level] > 0
                                AND orderid1 LIKE ‘618464266%‘
                                AND ( supplygoodsid NOT IN ( 1085317, 1112957 ) )

技术分享

                         SELECT     orderid1,
                                    LocalCost ,
                                    supplyGoodsName ,
                                    buyersgoodsid ,
                                    JSitId ,
                                    GSitId
                          FROM      csc_result WITH ( NOLOCK )
                          WHERE     [level] > 0
                                    AND orderid1 LIKE ‘618464266%‘
                                    AND (supplygoodsid  NOT IN ( 1085317,
                                                              1112957 )
                                                              OR SupplyGoodsId IS NULL)

技术分享

可见not in并不能把null值排除在外

T-SQL not in 遇到 null 暗含的陷阱

原文:http://blog.csdn.net/lee576/article/details/50599729

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!