Voici une requête qui affichera les salles NON-LIBRES pour une période :
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
Vous pouvez l'utiliser avec
select roomnumber from rooms where roomnumber not in (... as above ...)
pour trouver les salles GRATUITES