General information
Forum:
Microsoft SQL Server
Environment versions
SQL Server:
SQL Server 2014
Network:
Windows Server 2012
>>>Difficult to say whether it is better to one or the other, as a logical level are equal.
>>>If one has faith in the sql engine, use IN () because it is more explicit.
>>>The only certainty is that the OR is the sql server nemesis.
>>
>>Thanks
>
>I realize that the original
>
>>>>The first one was about using a regular syntax such as WHERE Client.NoProvince=1 OR Client.NoProvince=2 while the other one was using the IN approach such as WHERE Client.NoProvince IN (1,2).
>
>probably was ONLY example data. But the very first thought (guessing that NoProvince is intX typed) for optimization would be "Between" or the equivalent >= and <= query syntax to skip the problem Fabio mentioned ;-)
>
>BTW &ge and &le were tried first but not translated in preview at least ;-)
the true headache begin when you have this situation:
where condition1 OR condition2
both condition1 condition2 that are optimized
but the engine generates a plan that run across the all table.
I solve with a UNION, which has zero readability,
but it can be thousands of times faster
Previous
Next
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only