SQL - Recomendacion, manejo de fechas

 
Vista:

Recomendacion, manejo de fechas

Publicado por Isaías Islas (5072 intervenciones) el 28/05/2003 02:18:01
Hace unos dias, alguien pregunto "como sacar registros de
un dia en especial, sin tomar en cuenta la hora y los
minutos", yo presuroso, conteste que con un CONVERT o CAST

En una tabla que tiene 20 millones de registros, hice la
siguiente prueba:

select count(*) from total_contest
where convert(char(10), fd_fileinputdatetime, 112) =
20030525

Esta es su estadistica:

Table 'TOTAL_CONTEST'. Scan count 1, logical reads 95956,
physical reads 0, read-ahead reads 52190.

Se tardo 2 minutos en darme la informacion.

Senti que habia dado una "excelente solucion".

Hoy tuve el agrado de recibir la observacion de mi amigo y
compañero de estos foros, Miguel Egea, que lo que
habia "recomendado" era erroneo y para muestra, me pidio
que generara una llave (indice), solo con la columna de
FECHA, ya que la llave con la que estaba trabajando estaba
compuesta por otras 3 columnas (ocupando la FECHA, la 3a.
posicion).

Y que NO CONVIRTIERA la columna fecha, solo que indicara
mediante >= o < el rango de días para poder sacar la
información.

Aqui mi consulta:

select count(*) from total_contest
where fd_fileinputDateTime>='20030525'
and fd_fileinputdatetime<'20030526'

Aqui sus estadisticos:

Table 'TOTAL_CONTEST'. Scan count 1, logical reads 1016,
physical reads 1, read-ahead reads 0.

Esta vez se tardo 0 (CERO SEGUNDOS) en darme la misma
información.

Miguel, te lo dije y lo reitero, gracias por hacerme
volver en mis errores y poder corregirlos.

Saludos a todos.%
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