Is there any performance difference between a SQL "IN" statement versus using "OR"?
Thought I would ask the knowledgeable StackOverflow community a question that was on my mind today and I can't s开发者_StackOverflow中文版eem to find an answer.
Is there any performance difference or advantage between an "IN" or using "OR"?
Ie. Is
SELECT type FROM types WHERE typecat IN ('abc', 'def')
better than
SELECT type FROM types WHERE typecat = 'abc' OR typecat = 'def'
Adding: Using SQL Server 2008
This depends entirely on the SQL product you're using, which you haven't stated. One RDBMS that I use regularly cannot use indexes for the OR version.
If I recall correctly, SQL Server converts the IN
statement you have into the OR
statement.
No, there is no performance difference. The optimizer takes care of it.
精彩评论