Загрузка данных


WITH RECURSIVE Calendar AS (
    SELECT 
        room_id,
        DATE(start_date) AS day,
        DATE(end_date) AS end_date
    FROM Reservations
    WHERE room_id = 1

    UNION ALL

    SELECT 
        room_id,
        DATE_ADD(day, INTERVAL 1 DAY) AS day,
        end_date
    FROM Calendar
    WHERE day < end_date
)
SELECT DISTINCT day
FROM Calendar
ORDER BY day ASC;