Hola a todos, a ver si me podeís ayudar con las siguientes dudas sobre
índices:
Tengo dos campos tipo string (teléfonos) y quiero hacer busquedas sobre uno
u otro (Select * from tabla where (tel1 = '987654321') or (tel2 =
'987654321')
He estado analizando el funcionamiento del SQL Server con el plan de
ejecución y he visto que si busco sólo por el Tel2 y el índice definido está
agrupado (Clustered) no lo usa (Si busco por tel1 sí que lo hace), en
cambio, si no está agrupado si que lo utiliza para buscar. ¿Alguién sabe por
que funciona así?
Creo que es más efectivo para agilizar la búsqueda utiliza un indice para
cada teléfono, pero, como cuando lo defino como no agrupado sólo usa este, y
con tiempos buenos, no lo tengo tan claro.
¿Que opinion tenéis sobre esto? ¿Cual es la mejor opción?
(Evidentemente, la tabla en cuenstión ya tiene clave primaria, sólo quiero
agilizar las busquedas sobre estos campos)
Muchas gracias,
Leer las respuestas