Hier ist eine Abfrage, die die NICHT-FREIEN Zimmer für eine Zeitspanne anzeigt:
select room from bookings where
(arrival<'2011-03-12' and departure>='2011-03-12') -- overlap at the end
OR (arrival<='2011-03-10' and departure>'2011-03-10') -- overlap at the start
OR (arrival>='2011-03-10' and departure<='2011-03-12') -- complete overlap
Sie können dies mit
verwendenselect roomnumber from rooms where roomnumber not in (... as above ...)
um die FREIEN Räume zu finden