Ver Mensaje Individual
  #20 (permalink)  
Antiguo 26/08/2011, 15:54
senna5
 
Fecha de Ingreso: julio-2011
Mensajes: 5
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Consulta lenta - ¿índices?

Yo tengo el mismo problema tengo 5 millones de registros y hago busqueda por rango de fechas ejemplo 2011-08-01 al 2011-08-25 con esta busqueda la consulta sera de mas de 2 millones de registros y tarda 30 min tengo indice pk a la fecha

Código:
SELECT  A.ID_GUIA
			  ,	A.ID_CUENTA
			  , A.ID_PRODUCTO
			  , A.NB_ORIGEN
			  , A.NB_DESTINO
			  , CONVERT(CHAR(10),A.FH_CAPTURA,103) AS FH_CAPTURA 
			  , CONVERT(CHAR(10),A.FH_SCL,103) AS FH_SCL 
			  , A.NB_SCL
			  , CONVERT(CHAR(10),A.FH_NEWFIN,103) AS FH_NEWFIN
			  , A.NB_NEWFIN
			  , CONVERT(CHAR(10),A.FH_VOLTA,103) AS FH_VOLTA
			  , A.NB_VOLTA
			  , CONVERT(CHAR(10),B.FH_RECIBIDO,103) AS FH_DVRA
			  , B.NB_ARCHIVO AS NB_DVRA
			  , CONVERT(CHAR(10),A.FH_RARG,103) AS FH_RARG
			  , A.NB_RARG
			  , CONVERT(CHAR(10),A.FH_IBS,103) AS FH_IBS
			  , A.NB_IBS
			  , CONVERT(CHAR(10),C.FH_SHIP,103) AS FH_DSD
			  , A.NB_DSD
			  --, D.ID_MAJOR
		--INTO #TMPPASO
		FROM   MM_GUIAS A(nolock)
		--INNER JOIN #TmpRowsNum E ON A.ID_GUIA = E.ID_GUIA AND A.ID_CUENTA = E.ID_CUENTA AND A.ID_CUENTA_VTA = E.ID_CUENTA_VTA AND A.ID_PRODUCTO = E.ID_PRODUCTO AND A.NB_ORIGEN = E.NB_ORIGEN AND A.NB_DESTINO = E.NB_DESTINO AND A.FH_CAPTURA = E.FH_CAPTURA
		LEFT OUTER JOIN DD_DVRA B(nolock) ON A.ID_GUIA = B.ID_GUIA AND A.ID_CUENTA = B.ID_CUENTA AND A.ID_PRODUCTO = B.ID_PRODUCTO AND A.NB_ORIGEN = B.NB_ORIGEN AND A.NB_DESTINO = B.NB_DESTINO
		LEFT OUTER JOIN DD_DSD C(nolock) ON A.ID_GUIA = C.ID_GUIA AND A.ID_CUENTA = C.ID_CUENTA AND A.ID_PRODUCTO = C.ID_PRODUCTO AND A.NB_ORIGEN = C.NB_ORIGEN AND A.NB_DESTINO = C.NB_DESTINO
		--LEFT OUTER JOIN MAJOR_ACCNT D(nolock) ON A.ID_CUENTA = D.ID_CUENTA AND D.ID_MAJOR = ISNULL (@ID_MAJOR, D.ID_MAJOR) 
		WHERE	A.FH_SCL		>= CAST ('2011-08-01' AS DATETIME)
			AND A.FH_SCL		<= CAST ('2011-08-24' AS DATETIME)