
在SQL Server中为什么不建议使用Not In子查询
1个回答
展开全部
因为sql的条件筛选不走索引情况下 是循环遍历 而子查询 的出现 会使子查询的查询次数=子查询个数乘以数据行数 那么多次 效率不高 所以不建议使用子查询 非要用 子查询最好给子查询的表建立索引
譬如:
Select * From feeData Where FeeID Not in (Select ID From FeeInfo)
FeeInfo 表最好有索引
优化语句:Select * From feeData as d Left Join FeeInfo f on d.FeeID =f.ID Where f.Id is null
譬如:
Select * From feeData Where FeeID Not in (Select ID From FeeInfo)
FeeInfo 表最好有索引
优化语句:Select * From feeData as d Left Join FeeInfo f on d.FeeID =f.ID Where f.Id is null
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |