sql >> Base de Datos >  >> RDS >> Mysql

SQL / PHP:obtenga todos los resultados dentro del tiempo X a Y, y detecte si hay tiempos disponibles en el medio

Una forma sería usar una 'tabla de calendario', o si solo está interesado en un día, una 'mesa de reloj' sería suficiente. Lo siguiente ilustra (aproximadamente) cómo lo usaría.

SELECT clock.time AS available
FROM clock
LEFT JOIN bookings ON clock.time BETWEEN bookings.from AND bookings.to
                  AND bookings.date = '2013-01-01' 
WHERE bookings.id IS NULL

http://www.brianshowalter.com/calendar_tables es un ejemplo de cómo crear un calendario en MySQL