SQL Server
OR
. को ऑप्टिमाइज़ करने में बहुत अच्छा नहीं है भविष्यवाणी करता है।
इसका इस्तेमाल करें:
SELECT key3
FROM or_table
WHERE @key1 = 0
AND @key2 = 0
UNION ALL
SELECT key3
FROM or_table
WHERE @key1 = 0
AND @key2 <> 0
AND key2 = @key2
UNION ALL
SELECT key3
FROM or_table
WHERE @key2 = 0
AND @key1 <> 0
AND key1 = @key1
UNION ALL
SELECT key3
FROM or_table
WHERE @key1 <> 0
AND @key2 <> 0
AND key1 = @key1
AND key2 = @key2
SQL Server
प्रश्नों को निष्पादित करने से पहले चर के मूल्यों को देखेगा और अनावश्यक प्रश्नों को अनुकूलित करेगा।
इसका मतलब है कि चार में से केवल एक क्वेरी वास्तव में निष्पादित की जाएगी।