Ibland har MySQL problem med att optimera OR
frågor. I det här fallet kan du dela upp det i två frågor med UNION
:
SELECT * FROM relationship WHERE e_e_oid = @value1
UNION
SELECT * FROM relationship WHERE e_e_oid2 = @value2
Varje underfråga kommer att använda lämpligt index och sedan slås resultaten samman.
Men i enkla fall kan MySQL automatiskt utföra denna transformation, och det gör det i din fråga. Det är vad Using union
i EXPLAIN
utmatningsmedel.