A veces, MySQL tiene problemas para optimizar OR
consultas En este caso, puede dividirlo en dos consultas usando UNION
:
SELECT * FROM relationship WHERE e_e_oid = @value1
UNION
SELECT * FROM relationship WHERE e_e_oid2 = @value2
Cada subconsulta utilizará el índice apropiado y luego los resultados se fusionarán.
Sin embargo, en casos simples, MySQL puede realizar automáticamente esta transformación, y lo está haciendo en su consulta. Eso es lo que Using union
en el EXPLAIN
medios de salida.