SQL - Problemas en los Indices

 
Vista:

Problemas en los Indices

Publicado por Druz (35 intervenciones) el 24/02/2004 15:05:33
Hola,

Tengo es query en Sql Server 2000 y necesito optimizar el tiempo ya que se demora 4 minutos la consulta.

select a11.ID_CLI_CLIENTE ID_CLI_CLIENTE,
sum(a11.F_CONTADOR_TRX) WJXBFS1
from wh_cert.AG_TRASACCIONES_BKB_A1 a11
where (a11.ID_TCL_TIPOCLIENTE = 1
and a11.ID_TRX_CANAL in (1, 3)
and a11.ID_TIE_MES in (200309))
group by a11.ID_CLI_CLIENTE

Los indices que he creado son ID_TRX_CANAL, ID_TIE_MES, ID_CLI_CLIENTE, ID_TCL_TIPOCLIENTE pero el query no toma el indice (en el execution plan).

Es recomendable indexar también por F_CONTADOR_TRX?

Como puedo saber cual es el indice mejor para crear?

atte
Druz
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas en los Indices

Publicado por Odalys (7 intervenciones) el 25/02/2004 21:41:00
hola,
si tienes muchos indices eso tampoco te garantiza un buen funcionamiento. Mejor sera que tengas solo el que necesitas y hay algunas reglas que te pudieran ayudar:
Que el indice este por el campo llave y evitar indices sobre campos de texto o de gran longitud. Siempre que puedas indexa por campos numericos.
Bastaria un indice por ID_CLI_CLIENTE.
En esta query solo veo una tabla, si tuvieras dos, seria recomendable tener un indice por el campo llave secundaria.
Y tal vez si cambias el orden de los filtros en el WHERE se pueda mejorar la rapidez.
Lo otro es que si esta un SUM del campo F_CONTADOR_TRX, lo deberias tener el GROUP BY
Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar