Você precisa de outra mesa com reservas
ID roomId checkInDate checkOutDate
1 1 4/6/2011 12:00PM 4/9/2011 11:00AM
2 2 4/2/2011 12:00PM 4/3/2011 11:00AM
3 1 4/9/2011 12:00PM 4/11/2011 11:00AM
Então, ao adicionar uma nova reserva para cada quarto, você precisa garantir que a consulta a seguir resulte em um
zero 0
, ou então o quarto já está reservado. //Count Scheduling Conflicts
select count(roomid) from bookings where
bookings.checkOutDate > YouNewBookingCheckInDate and
bookings.checkInDate < YouNewBookingCheckOutDate
Portanto, se sua nova solicitação de reserva para o quarto 1 for em
4/5/2011 1:00PM
, o registro #1 será contado e a consulta resultará em 1 (indicando 1 conflito)