27/10/2010, 07:20
|
| 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) |