У меня есть столы, номера, апартаменты и гостиница. Теперь мне легко получить все свободные номера, название отеля или адрес квартиры, используя отдельные запросы, например:
Получить все свободные номера:
SELECT hotel.name, count(*) AS num_of_free_rooms
FROM hotel, rooms
WHERE rooms.occupied !=0
AND hotel.hotel_id = rooms.room_hotel
GROUP BY hotel.hotel_id
Получить все свободные квартиры:
SELECT hotel.name, count(*) AS num_of_free_ap
FROM hotel, apartments
WHERE apartments.occupied_ap !=0
AND hotel.hotel_id = apartments.apartment_hotel
GROUP BY hotel.hotel_id
Как я могу получить такие результаты:
Название отеля | Количество свободных номеров кроме 0 | Количество квартир 0 или любой другой
Должен ли я организовывать свои данные по-разному, например, добавив в поле таблицы комнаты тип 1 для комнат, 2 для квартир или сделать это с отдельными таблицами. Я открыт для любых предложений, чтобы получить результаты, которые мне нужны.