sql >> Database teknologi >  >> RDS >> Mysql

SQL / PHP:få alle resultater inden for tiden X til Y, og opdag om der er ledige tider imellem

En måde ville være at bruge en 'kalendertabel', eller hvis du kun er interesseret i én dag, ville et 'klokkebord' duge. Det følgende illustrerer (omtrent), hvordan du vil bruge det.

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 er et eksempel på, hvordan man opretter en kalender i MySQL



  1. XML flad fil vs. relationel database backend

  2. Hvordan finder man parametre i Oracle-forespørgsel modtaget fra v$sql?

  3. Konvertering af Python DateTime-streng til heltal millisekunder

  4. Sådan grupperes efter uge i postgresql