La mayoría de las otras respuestas no proporcionan nada concluyente, solo especulaciones. Entonces, según el buen consejo de la respuesta de @Namphibian
, ejecuté un EXPLAIN
en algunas consultas similares a las del OP.
Los resultados están a continuación:
EXPLAIN
para una consulta con = 1
:
EXPLAIN
para una consulta con IN(1)
:
EXPLAIN
para una consulta con IN(1,2,3)
:
Como puede ver, MySQL optimiza IN(1)
ser igual a = 1
en este tipo de consulta. Respuesta de @mes
Sin embargo, parece indicar que este podría no ser siempre el caso con consultas más complejas.
Entonces, para aquellos que fueron demasiado perezosos para ejecutar EXPLAIN
ellos mismos, ahora ya lo sabes. Y sí, es posible que desee ejecutar EXPLAIN
en su propia consulta para asegurarse de que se maneja de esta manera. :-)