2015-02-18 2 views
0

Я работаю над проектом бронирования номеров в отеле.Запрос Выберите из таблицы

У меня есть 4 таблицы:

Номера (room_id, категория, цена);

booking_rooms (idbr, room_id, booking_id);

бронирование (booking_id, client_id, checkin, checkout);

клиентов (client_id, имя, фамилия, адрес, телефон, электронная почта);

Я хочу создать форму поиска, чтобы проверить доступные номера между регистрацией и датой выписки и категорией.

SELECT * FROM rooms 
WHERE room_id NOT IN (select room_id 
         from bookings_rooms 
         WHERE (checkin < '$checkindate' 
           AND checkout > '$checkoutdate') 
          or (checkin> '$checkindate' 
           AND checkin< '$checkindate')) 

Это то, что я сделал. И это не работает.

Можете ли вы, ребята, помочь мне с этим. Можете ли вы дать мне представление?

+0

использовать соединение, затем запустить где в соответствии с поиском var –

ответ

0
select * from rooms 
where room_id not in 
     (select room_id from bookings_rooms 
         where booking_id where not in //or in :) 
             (select booking_id from bookings 
               where (checkin < '$checkindate' 
               AND checkout > '$checkoutdate') 
               or (checkin> '$checkindate' 
               AND checkin< '$checkindate'))) 
+0

Спасибо большое! Это было очень полезно. –

+0

Все самое лучшее :) – starko

Смежные вопросы