以为我会问知识渊博的StackOverflow社区一个我今天想到的问题,我似乎无法找到答案。
“IN”或使用“OR”之间是否有任何性能差异或优势?
IE中。是
SELECT类型FROM类型WHERE typecat IN('abc','def')
优于
SELECT类型FROM类型WHERE typecat ='abc'或typecat ='def'
添加:使用SQL Server 2008
答案 0 :(得分:2)
这完全取决于您使用的SQL产品,您尚未说明。我经常使用的一个RDBMS不能使用OR版本的索引。
答案 1 :(得分:1)
不,没有性能差异。优化器负责处理它。
答案 2 :(得分:1)
如果我没记错的话,SQL Server会将您拥有的IN
语句转换为OR
语句。