🔹Задача на схлопывание строк🔹
Есть данные привязки абонентов к базовым станциям оператора, необходимо схлопнуть строки, если дата окончания привязки абонента = дате начала следующей.
Для упрощения будем считать так:
📌Есть таблица, в которой три колонки - номер телефона, дата начала действия строки, дата окончания.
Если дата окончания текущей строки одного номера телефона = дате начала действия следующей строки этого же номера телефон, то мы должны схлопнуть эти строки в одну.
Пример:
88001153535 01.11.2024 13:23 01.11.2024 13:24
88001153535 01.11.2024 13:24 01.11.2024 13:25
Должны схлопнуть в одну строку:
88001153535 01.11.2024 13:23 01.11.2024 13:25
А строки
88001264545 01.11.2024 11:15 01.11.2024 11:24
88001264545 01.11.2024 12:00 01.11.2024 12:01
88001264545 01.11.2024 12:01 01.11.2024 12:08
88001264545 01.11.2024 12:15 01.11.2024 12:26
88001264545 01.11.2024 12:26 01.11.2024 12:35
88001264545 01.11.2024 12:35 01.11.2024 12:45
88001264545 01.11.2024 12:45 01.11.2024 13:14
88001264545 01.11.2024 13:14 01.11.2024 13:21
88001264545 01.11.2024 13:21 01.11.2024 13:26
88001264545 01.11.2024 13:26 01.11.2024 13:28
Должны схлопнуть в:
88001264545 01.11.2024 11:15 01.11.2024 11:24
88001264545 01.11.2024 12:00 01.11.2024 12:08
88001264545 01.11.2024 12:15 01.11.2024 13:28
(обратите внимание как 7 строк каскадно схлопнулись в одну)
Прикреплю скрин данных до обработки и после.
Также в комменты прикреплю скрипты создания таблицы и наполнения данными (для постгри).
Это реальный рабочий кейс и в целом типичная задача на схлопывание строк, которые дают на собесах.
Присылайте решения😊
Свои я опубликую в понедельник ближе к вечеру 💅
#sql #задача
Есть данные привязки абонентов к базовым станциям оператора, необходимо схлопнуть строки, если дата окончания привязки абонента = дате начала следующей.
Для упрощения будем считать так:
📌Есть таблица, в которой три колонки - номер телефона, дата начала действия строки, дата окончания.
Если дата окончания текущей строки одного номера телефона = дате начала действия следующей строки этого же номера телефон, то мы должны схлопнуть эти строки в одну.
Пример:
88001153535 01.11.2024 13:23 01.11.2024 13:24
88001153535 01.11.2024 13:24 01.11.2024 13:25
Должны схлопнуть в одну строку:
88001153535 01.11.2024 13:23 01.11.2024 13:25
А строки
88001264545 01.11.2024 11:15 01.11.2024 11:24
88001264545 01.11.2024 12:00 01.11.2024 12:01
88001264545 01.11.2024 12:01 01.11.2024 12:08
88001264545 01.11.2024 12:15 01.11.2024 12:26
88001264545 01.11.2024 12:26 01.11.2024 12:35
88001264545 01.11.2024 12:35 01.11.2024 12:45
88001264545 01.11.2024 12:45 01.11.2024 13:14
88001264545 01.11.2024 13:14 01.11.2024 13:21
88001264545 01.11.2024 13:21 01.11.2024 13:26
88001264545 01.11.2024 13:26 01.11.2024 13:28
Должны схлопнуть в:
88001264545 01.11.2024 11:15 01.11.2024 11:24
88001264545 01.11.2024 12:00 01.11.2024 12:08
88001264545 01.11.2024 12:15 01.11.2024 13:28
(обратите внимание как 7 строк каскадно схлопнулись в одну)
Прикреплю скрин данных до обработки и после.
Также в комменты прикреплю скрипты создания таблицы и наполнения данными (для постгри).
Это реальный рабочий кейс и в целом типичная задача на схлопывание строк, которые дают на собесах.
Присылайте решения😊
Свои я опубликую в понедельник ближе к вечеру 💅
#sql #задача