Logo
TGCATALOG
Каталог Подборки Блог
Data analysis - DA SQL

Data analysis - DA SQL

Анализ данных: SQL, Python.

Нет оценок
582
29.10.2026
582
29.10.2026
Нет оценок
582
29.10.2026
Безопасный переход через бот
О канале

Анализ данных: SQL, Python.

Подписчиков 1,700
Тематика Технологии
Язык Русский
Ссылка t.me/business_stats

Также рекомендуем

Kekaton AI | Озвучка и клон голоса
Kekaton AI | Озвучка и клон голоса
Бот

AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.

Описание

Про анализ данных: базы данных, SQL, Python и другое для аналитиков.

Последние посты

Data analysis - DA SQL
Data analysis - DA SQL
🔒Открыть пост
и посмотреть медиа
Как найти серии подряд идущих дней в SQL Классическая задача gaps and islands: есть таблица событий visits, которая имеет поля: ▶️client_id (id клиента) ▶️visit_date (дата визита) Нужно понять, сколько дней подряд клиент был активен, какая у него максимальная серия и когда она прервалась. 🟠Если пронумеровать визиты клиента по порядку через ROW_NUMBER и вычесть номер из даты, то у всех дней внутри одной непрерывной серии получится одно и то же значение. Как только в датах появляется дыра, значение меняется, значит, началась новая серия. SELECT client_id, visit_date, visit_date-ROW_NUMBER() OVER (PARTITION BY client_id ORDER BY visit_date)*INTERVAL '1 day' AS grp FROM visits Дальше достаточно сгруппировать по client_id и grp: WITH marked AS (запрос выше) SELECT client_id, MIN(visit_date) AS начало, MAX(visit_date) AS конец, COUNT(*) AS длина FROM marked GROUP BY client_id, grp ORDER BY длина DESC В итоге выведутся все серии по каждому клиенту с датами начала, конца и длиной. Максимальная серия достаётся обычным MAX(длина), текущая - фильтром по конец = CURRENT_DATE. ❗️Но есть нюансы, на которые нужно обратить внимание: ▶️Дубли. Если на клиента в один день приходится несколько строк, нумерация поедет и серии порвутся. Перед расчётом нужен DISTINCT или агрегация по дню. ▶️Шаг. Приём работает для равномерного шага. Для месяцев нужно вычитать номер из номера месяца. Для недель - привести дату к началу недели. А если разрывом считается произвольный интервал (например, пауза больше 30 дней), то вместо вычитания берётся LAG и накопительная сумма флага разрыва.
Data analysis - DA SQL
Динамика подписчиков
+-0.5% за 30 дней
Текущие
1,700
Месяц назад
1,709
Средний рост
+0 / день
Обновлено
14 часов назад

Отзывы о канале Data analysis - DA SQL

Авторизуйтесь, чтобы оставить отзыв

Только зарегистрированные пользователи могут делиться своим мнением.

Пока нет отзывов

Станьте первым, кто поделится своим впечатлением об этом ресурсе!

Похожие ресурсы

Loading
Переход на светлую тему
Главная Каталог Подборки Блог Вход