Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/10/2010, 07:20
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 1 mes
Puntos: 2658
Respuesta: duda con joins(¿cual de estas consultas es mejor?)

Eso no es un filtro. Es la condición de un INNER JOIN, y se debe poner de esa forma, precisamente.
El temas es simple: El FROM es optimizable estadísticamente por el paser y e WHERE no, por lo que eventualmente dos ejecuciones de la misma sentencia pueden tener diferente perfomance, y además el INNER JOIN descarta registros en la medida que los lee.
En cambio, en el WHERE deberá obtener toda la tabla de datos antes de aplicar los filtros, por lo que la performance es baja, ya que al realizar un JOIN sin condiciones ON se generaría un producto cartesiano.

Si quieres probarlo, deberías usar EXPLAIN sentencia, para que te devuelva los datos análisis de la sentencia.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)