12/05/2006, 07:46
|
| | | Fecha de Ingreso: agosto-2004 Ubicación: ahora... en Caracas
Mensajes: 345
Antigüedad: 20 años, 3 meses Puntos: 0 | |
la importancia esta en los indices Hola, me permito comentar mi experiencia propia, que aunque no soy experto (no creo en ellos) tengo un tiempo trabajando con B/D.
De acuerdo a lo que he visto, efectecvimanete los JOIN, bien planteados funcionan levemente mas rapido que las consultas armadas con el WHERE (sin JOIN).
Lo que realmente es MUY relevante es la existencia de indices que permitan realizar las busquedas y enlaces de registros de manera rapida al motor.
A este punto es importante recalcar que el orden es que son presentados los elementos parte de una clave SI es relevante para el uso de un indice, me explico:
Si la tabla tiene un indice compuesto por los campos c1,c2 y c3 y se realiza un consulta, se debe procurar que los campos sean presentados en ese orden , es decir, la siguiente consulta usara el indice: Select * from tabla where c1='a' and c2='b' and c3='c'
pero, esta otra no: Select * from tabla where c2='b' and c3='c' and c1='a'
ya que los campos no estan ordenados en la condicion.
De la misma forma, si se presenta una condicion usando solo parte de los campos del indice, este sera usado, es decir, la siguiente consulta usara el indice: Select * from tabla where c1='a' and c2='b'
En el caso de los JOIN, hay que asegurarse que las tablas que se van enlazando tengan indices por los campos de enlace.
saludos y suerte
__________________ :pirata: El arte de desarrollar es dejar que los otros lo hagan |