Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/10/2003, 12:05
Joey
 
Fecha de Ingreso: noviembre-2002
Mensajes: 65
Antigüedad: 22 años, 4 meses
Puntos: 0
Indice Sql Server 2000

Hola,

amigos tengo un problema con un indice de una tabla, ya que cree un indice por el campo "id_dia_inicio_tramite" que tiene el formato datetime. Yo ocupo estos dos Query que tengo aca abajo, pero con la funcionalidad del "Sql Query Analyzer" -> "Execution Plan" me doy cuenta que el Query 1 no esta tomando el indice "Index Seek" pero en 2 si lo esta tomando.

Query 1
select a11.id_nivel1 id_nivel1,
count(distinct a11.id_cliente) WJXBFS1,
sum(a11.f_cant_tramites) WJXBFS2,
(sum(a11.f_cant_tramites) / NULLIF(count(distinct a11.id_cliente), 0)) WJXBFS3
from V_BT_TRAMITE a11
where (a11.id_dia_inicio_tramite >= '2003-08-01 00:00:00'
and a11.id_dia_inicio_tramite <= '2003-10-06 00:00:00')
group by a11.id_nivel1

Query 2
select sum(a11.f_cant_tramites) WJXBFS1,
count(a11.id_cliente) WJXBFS2
from V_BT_TRAMITE a11
where (a11.id_dia_inicio_tramite >= '2003-08-01 00:00:00'
and a11.id_dia_inicio_tramite <= '2003-10-06 00:00:00')


¿Por que el primer query no toma el indice (con el group by)?

</druz>
__________________
</druz>