You will need different tables to do different things.
Look at the properties of a hotel, each part of that requires a table, so you need one that holds room data about that room, single, double, family, bath, shower., both, balcony, tv and so on. Your booking will need to be stored in a table of bookings, your calander will be the thing that pulls this data together as a planner.
Other things to consider, rooms that are not available because of repairs needed, being cleaned and prepared.
Then the way you link the query together is a case of using a general query that has a sub query and a query to eliminate those rooms not available and the client will be left with an availability.