Задача уровня Booking/Airbnb. **Условие:** Найдите все пары бронирований одного номера, которые пересекаются по датам (конфликты). **Таблица:** reservations (reservation_id, room_id, check_in_date, check_out_date, status, ...) **Требования:** 1. Учитывать только активные бронирования (status IN ('confirmed', 'checked_in')) 2. Бронирования пересекаются если: A.start < B.end AND A.end > B.start 3. Вывести room_id, reservation1_id, reservation2_id, overlap_start, overlap_end, overlap_days **Подсказка:** Self-join с условием пересечения интервалов.
Войдите, чтобы решить
Начать решение