
28/01/2008, 11:37
|
| | Fecha de Ingreso: abril-2007
Mensajes: 160
Antigüedad: 17 años, 10 meses Puntos: 1 | |
Re: Duda sobre rendimiento en selects con JOIN, ON y WHERE En particular cabría preguntarse si los índices siguen funcionando igual de un modo o de otro.
Por ejemplo, supongamos que tenemos un índice en la tabla t1, basado en dos campos, a y b. Y ahora supongamos que queremos mostrar los datos de la tabla t1, que cumplan que 'a' sea un literal que le pasemos (por ejemplo 'xxx'), y 'b' tenga el mismo valor que otro campo equivalente que tengamos en otra tabla, que además cumpla en un tercer campo otra condición.
Tendríamos:
select a, b from t1 join t2
on t1.b=t2.b
and t1.a='xxx' and t2.c='un valor'
La duda sería entonces saber si el índice funciona, y si también funciona, y es más o menos eficiente, sacando la última línea del ON y poniéndola en un WHERE. |