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

Duda con intervalos de horas

Estas en el tema de Duda con intervalos de horas en el foro de PostgreSQL en Foros del Web. Cordial saludo, tengo el siguiente dilema que corroe mi mente: en una tabla tengo dos campos que se llaman hora_inicio y hora_fin respectivamente en ellas ...
  #1 (permalink)  
Antiguo 13/08/2011, 08:30
 
Fecha de Ingreso: junio-2008
Ubicación: Colombia
Mensajes: 207
Antigüedad: 16 años, 5 meses
Puntos: 12
Duda con intervalos de horas

Cordial saludo, tengo el siguiente dilema que corroe mi mente:

en una tabla tengo dos campos que se llaman hora_inicio y hora_fin respectivamente
en ellas se guardaran valores del tipo time como este => "7:00" o "9:00" etc, mi duda es como sacar aquellos rangos de horas que se apliquen a un parámetro, me explico, digamos que en la tabla están los registros de "7:00"(hora_inicio) a "9:00"(hora_fin)... me gustaría obtener obtener hora_inicio y hora_fin para un parametro cuyo valor sea digamos "7:30" u "8:30"

así por ejemplo:

si envio 7:30 => de 7:00 a 9:00
si 8:00 => de 7:00 a 9:00 y de 8:00 a 10:00
si 8:30 => de 7:00 a 9:00 y de 8:00 a 10:00 etc.

No he podido encontrar algo que me sirva al menos en el momento, estoy buscando en las funciones de date/time de postgres haber si alguna de ellas me resuelve el problema.

Gracias de antemano.


R// Ya me respondi por si a alguien le sirve.

select * from reserva
where '07:30'
between hora_inicio AND hora_fin

en ese caso me retorna
hora_inicio => '7:00'
hora_fin => '9:00'

Última edición por Rosencrantz; 13/08/2011 a las 09:32
  #2 (permalink)  
Antiguo 31/08/2011, 10:29
Avatar de miguec04  
Fecha de Ingreso: agosto-2008
Ubicación: Cimitarra, Santander
Mensajes: 378
Antigüedad: 16 años, 4 meses
Puntos: 15
Respuesta: Duda con intervalos de horas

Hice un ejemplo en postgres, espero y te sirva

Código SQL:
Ver original
  1. CREATE TABLE HORAS(
  2. ID INTEGER CONSTRAINT ID_PK PRIMARY KEY,
  3. HORA_INICIO TIME NOT NULL,
  4. HORA_FIN TIME NOT NULL
  5. );
  6.  
  7. SELECT * FROM HORAS
  8. WHERE HORA_INICIO<= TIME '11:00' AND HORA_FIN >= TIME '11:00'

las once horas o el parámetro que se va a evaluar debe ser el mismo en ambas condiciones.

Cita:
select * from tabla
where hora_inicio<={PARAMETRO} AND hora_fin>={PARAMETRO}
__________________
Desoftc Technology - Miguel Carmona
Creaciones Inteligentes - Cimitarra Colombia
[email protected]
http://www.desoftc.com.co

Última edición por miguec04; 31/08/2011 a las 10:30 Razón: Corrección Código

Etiquetas: funcion, horas, intervalos, postgres
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 11:05.