Parfois, MySQL a du mal à optimiser OR
requêtes. Dans ce cas, vous pouvez le diviser en deux requêtes en utilisant UNION
:
SELECT * FROM relationship WHERE e_e_oid = @value1
UNION
SELECT * FROM relationship WHERE e_e_oid2 = @value2
Chaque sous-requête utilisera l'index approprié, puis les résultats seront fusionnés.
Cependant, dans des cas simples, MySQL peut effectuer automatiquement cette transformation, et il le fait dans votre requête. C'est ce que Using union
dans le EXPLAIN
moyens de sortie.