Горячие серии бронирований объекта
Задача по SQL с проверкой онлайн
- Сложность
- Сложная
- Языки
- SQL
- Темы
- SQL: оконные функции
- SQL: группировка
Серией назовём цепочку бронирований одного объекта, в которой каждое следующее бронирование начинается не позже чем через 24 часа после начала предыдущего; бронирование, начавшееся позже, открывает новую серию. Учитываются все бронирования, включая гостевые. Для серий из двух и больше бронирований выведите столбцы facid, first_start (начало первого бронирования серии), last_start (начало последнего) и bookings (число бронирований). Порядок строк не важен.
Таблицы и данные уже есть в стартовом коде и создаются заново при каждом запуске (SQLite):
facilities(facid, name, membercost, guestcost, initialoutlay, monthlymaintenance)— объекты клуба;membercostиguestcost— цена одного слота для участника и для гостя.members(memid, surname, firstname, address, zipcode, telephone, recommendedby, joindate)— участники;recommendedby—memidпригласившего илиNULL;memid = 0— гость.bookings(bookid, facid, memid, starttime, slots)— бронирования; один слот — 30 минут;starttime— текст вида2012-09-14 09:00:00.
Источник: задача CodeShare
Решить онлайнБесплатно и без регистрации: пишете код в браузере и проверяете его тестами (без аккаунта — несколько задач в день).