Ver Mensaje Individual
  #15 (permalink)  
Antiguo 22/09/2010, 04:54
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Comparar si dos horas se cruzan entre si

Primero tienes que cargar el registro que quieres comparar, concretamente su Hora_inicio en la variable horainicial, y su hora_Termino en la variable horafinal, además de su id, claro. Luego comparas ese dato con todos los demás.

SELECT * FROM tabla WHERE horainicial<=Hora_Termino AND horafinal>=Hora_Inicio WHERE id != id

Las condiciones son claras: la hora inicial debe ser menor o igual que la hora de termino y a la vez que la hora final sea mayor o igual que la hora de inicio. Esas son las coincidencias. Porque si la horainicial es mayor que la hora de término, ya no hay coincidencia, y si la hora final es menor que la hora de inicio, tampoco.
Esta consulta nos lo enseñó Avatar810.