List:General Discussion« Previous MessageNext Message »
From:Eamon Daly Date:December 12 2005 8:24pm
Subject:NULL, OR, and indexes
View as plain text  
I'm sure the answer is "You're SOL", but I figured I'd ask
anyway. I have a WHERE condition like:

SELECT *
FROM a
JOIN b
WHERE
(b1 IS NULL OR b1 = u1) AND
(b2 IS NULL OR b2 = u2) AND
(b3 IS NULL OR b3 = u3)

where b is a Very Large table. I have an index on b like
(b1, b2, b3), but obviously that gets thrown out because of
the OR. Is there a Better Way to either rewrite the WHERE
condition or break out b to allow indexes to be used?

____________________________________________________________
Eamon Daly

Thread
NULL, OR, and indexesEamon Daly12 Dec
  • Re: NULL, OR, and indexesDan Nelson12 Dec
    • Re: NULL, OR, and indexesDan Nelson12 Dec
  • Re: NULL, OR, and indexesEamon Daly12 Dec