Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Consulta intervalos de Fecha y Hora

Estas en el tema de Consulta intervalos de Fecha y Hora en el foro de SQL Server en Foros del Web. Tengo una tabla ID int NOMBRE texto FECHA date/time HORA texto ... en el campo FECHA se guarda solo la fecha y en el campo ...
  #1 (permalink)  
Antiguo 30/11/2007, 13:56
 
Fecha de Ingreso: febrero-2005
Mensajes: 4
Antigüedad: 19 años, 10 meses
Puntos: 0
Consulta intervalos de Fecha y Hora

Tengo una tabla

ID int
NOMBRE texto
FECHA date/time
HORA texto
...

en el campo FECHA se guarda solo la fecha y en el campo HORA la hora pero formato de texto. Mi pregunta es como puedo hacer una consulta que me de todos los datos digamos del dia 05/12/2005 a las 16:00 hasta el dia 06/12/2005 a las 08:00.

Gracias de antemano...

Última edición por Wizard_ALfa; 02/12/2007 a las 14:19
  #2 (permalink)  
Antiguo 02/12/2007, 11:31
Avatar de PosProdukcion  
Fecha de Ingreso: noviembre-2004
Ubicación: Manzanares el Real (Madrid)
Mensajes: 726
Antigüedad: 20 años, 1 mes
Puntos: 9
Re: Consulta intervalos de Fecha y Hora

Podrías hacer:

fecha <= Cast(FECHA1+ ' ' + HORA1 as datetime) and fecha >= Cast(FECHA2 + ' ' + HORA2 as datetime)

Pero igual te da error, ya que FECHA1 y FECHA2 incluyen hora al ser datetime

¿Por que no usas una única columna DATETIME? Después puedes mostrar la fecha y la hora por separado con las funciones de fecha y hora...
  #3 (permalink)  
Antiguo 02/12/2007, 14:11
 
Fecha de Ingreso: febrero-2005
Mensajes: 4
Antigüedad: 19 años, 10 meses
Puntos: 0
Re: Consulta intervalos de Fecha y Hora

...es que la base de datos ya esta hecha e implementada.
  #4 (permalink)  
Antiguo 02/12/2007, 14:39
Avatar de PosProdukcion  
Fecha de Ingreso: noviembre-2004
Ubicación: Manzanares el Real (Madrid)
Mensajes: 726
Antigüedad: 20 años, 1 mes
Puntos: 9
Re: Consulta intervalos de Fecha y Hora

¿Probaste

fecha <= Cast(FECHA1+ ' ' + HORA1 as datetime) and fecha >= Cast(FECHA2 + ' ' + HORA2 as datetime)?

Otra opción si la anterior no funcion:

Cast(Day((FECHA1) + '/' + Month(FECHA1) + '/' + Year(FECHA1) + ' ' + HORA1 as datetime)

(suponiendo que el varchar HORA esté en un formato correcto)
  #5 (permalink)  
Antiguo 03/12/2007, 15:26
Avatar de Beakdan  
Fecha de Ingreso: diciembre-2001
Ubicación: Monterrey, Nuevo León
Mensajes: 433
Antigüedad: 23 años
Puntos: 7
Re: Consulta intervalos de Fecha y Hora

Primero deberías combinar la fecha y hora para después indicar el rango sobre esta combinación. Muy problematico si esta será una condición frecuente.

Código:
WHERE   (FECHA + CAST(HORA AS DATETIME)) >= '2005-12-05T16:00:00' AND 
        (FECHA + CAST(HORA AS DATETIME)) <= '2005-12-06T08:00:00'
Cómo PosProdukcion mecionó, esto es suponiendo que el formato de HORA sea el correcto, y que FECHA sea realmente sólo la fecha.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:51.