"x IN(a,b)"与"x = a OR x = b"的表现

der*_*hen 1 sql t-sql sql-server

SQL Server之间的性能是否存在任何差异:

where (anothercolumn=17) OR (anothercolumn=23) OR (anothercolumn=33)
Run Code Online (Sandbox Code Playgroud)

where anothercolumn IN (17,23,33)
Run Code Online (Sandbox Code Playgroud)

Aar*_*and 5

不,他们以完全相同的方式优化,你永远不会看到任何性能差异.唯一的例外是如果您有非常多的列,并且传输查询文本本身的实际网络性能会引入一些延迟(或超过传输大小).如果发生这种情况,您应该聘请新的网络人员