sql >> Base de Datos >  >> RDS >> Mysql

Qué sucedió primero en mysql:unirse o dónde

El join sucede antes del where , sin embargo...

El where La cláusula es un filtro para todas las filas devueltas por la unión, pero el optimizador lo reconocerá si existe un índice en A.id , se usará para recuperar filas de A esa coincidencia, luego ocurrirá la unión, luego, teóricamente, la cláusula where filtrará los resultados, pero nuevamente el optimizador reconocerá que la condición ya se cumplirá, por lo que la omitirá como filtro.

Dicho todo esto, el optimizador siempre devolverá el mismo resultado que devolvería sin el optimizador.