例如,这明显变慢了吗?
DELETE FROM [table] WHERE [REOID] IN ( 1, 1, 1, 2, 2, 1, 3, 5)
比这个:
DELETE FROM [table] WHERE [REOID] IN ( 1, 2, 3, 4)
SQL Server 2008 R2。
谢谢!
答案 0 :(得分:3)
大多数引擎会在解析阶段消除常量IN
列表中的重复项。
这样的查询会比使用非重复列表的查询稍微慢一些,会生成相同的计划,并且对于大多数真实场景,您几乎不会发现任何差异。