No se como hacer esto, y ya llevo tiempo dandome cabezazos sin conseguirlo.
Quiero saber si una hora, está comprendido entre dos horas.
Por ejemplo si quiero saber que las 15:00h está dentro desde las 12:00h y 21:00 me da afirmativo, pero ¿que pasa si la hora fin son las 00h?
La sentencia que uso es la siguiente, porque compruebo también que la hora no sea inferior a la de inicio ni superior a la final, ya que quiero saber si ha puesto una hora inferior a la inicio o superior a la final.
En la base de datos, el campo hora_inicio y hora_fin es un valor integer.
Código SQL:
Ver original
SELECT * FROM apertura_cierre WHERE CAST('$_POST[inicio]' AS TIME) < CAST(CONCAT(hora_inicio,':00') AS TIME) OR CAST('$hora_fin' AS TIME) > CAST(CONCAT(hora_fin,':00') AS TIME) OR CAST('$hora_fin' AS TIME) < CAST(CONCAT(hora_inicio,':00') AS TIME)";
El valor $_POST[inicio] viene con el formato hh:mm
Si hay alguna otra forma de hacerlo, bienvenido sea.
Muchas gracias