Понякога MySQL има проблеми с оптимизирането на OR
заявки. В този случай можете да го разделите на две заявки, като използвате UNION
:
SELECT * FROM relationship WHERE e_e_oid = @value1
UNION
SELECT * FROM relationship WHERE e_e_oid2 = @value2
Всяка подзаявка ще използва подходящия индекс и след това резултатите ще бъдат обединени.
Въпреки това, в прости случаи MySQL може автоматично да извърши тази трансформация и го прави във вашата заявка. Това е Using union
в EXPLAIN
изходни средства.