Распределяем события по типам — GROUP BY + агрегаты!
Когда нужно понять, какие типы событий встречаются чаще, обычный
Посчитаем количество каждого типа события:
Теперь выберем только популярные типы с более чем 100 событиями:
Можно сразу добавить среднее время отклика для каждого типа:
🔥 Важно: сначала агрегируем по типу события, потом фильтруем по количеству или другим метрикам — так легко выявлять «тяжёлые» или проблемные категории.
➡️ SQL Ready | #практика
Когда нужно понять, какие типы событий встречаются чаще, обычный
WHERE не помогает — нужна агрегация.Посчитаем количество каждого типа события:
SELECT EventType, COUNT(*) AS EventCount
FROM Logs
GROUP BY EventType;
Теперь выберем только популярные типы с более чем 100 событиями:
SELECT EventType, COUNT(*) AS EventCount
FROM Logs
GROUP BY EventType
HAVING COUNT(*) > 100;
Можно сразу добавить среднее время отклика для каждого типа:
SELECT EventType,
COUNT(*) AS EventCount,
AVG(ResponseTime) AS AvgResponse
FROM Logs
GROUP BY EventType
HAVING COUNT(*) > 100;
🔥 Важно: сначала агрегируем по типу события, потом фильтруем по количеству или другим метрикам — так легко выявлять «тяжёлые» или проблемные категории.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥10❤6🤝1
Этот инструмент позволяет находить последовательности событий: рост цены и её падение, пропуски активности пользователей.
Что важно знать:
• PATTERN описывает последовательность (например, рост => падение)
• DEFINE задаёт правила для каждого шага;
• Можно строить аналитику для временных рядов, активности, безопасности.
MATCH_RECOGNIZE делает SQL гибким и превращает его в язык сценариев — без циклов и внешних процедур.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11🔥9👍8🤝2
This media is not supported in your browser
VIEW IN TELEGRAM
Это не просто справочники - это структурированный учебник и тренажёр в одном месте. Ты найдёшь понятные теоретические объяснения и сразу приступишь к практике: каждая тема содержит примеры и задачи, которые можно решать прямо на сайте.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤9🔥5
В этой задаче соберём запрос, который определит «пробки» на дорогах: места, где машины движутся слишком медленно.
Что делаем:
• Считаем среднюю скорость по каждому участку дороги за последние 10 минут;
• Отмечаем «пробку», если средняя скорость падает ниже 15 км/ч;
• Определяем топ-участки, где движение затруднено чаще всего.
Такой анализ помогает не только в транспорте: его можно использовать и в бизнесе — для поиска «узких мест» в процессах или системах.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21👍10❤6👎1
GENERATE_SERIES — быстро создаём последовательности чисел и дат!
В SQL часто требуется сгенерировать последовательность чисел или дат для отчётов, тестовых данных или анализа временных рядов.
Вместо ручного создания таблиц или массивов можно использовать встроенную функцию
Функция отлично работает и с датами, позволяя создавать последовательность с нужным шагом или произвольный интервал:
Можно использовать вместе с JOIN для заполнения пропусков в таблицах:
🔥 Подходит для аналитики, построения сквозных временных рядов и подготовки тестовых наборов данных без лишних ручных операций.
➡️ SQL Ready | #практика
В SQL часто требуется сгенерировать последовательность чисел или дат для отчётов, тестовых данных или анализа временных рядов.
Вместо ручного создания таблиц или массивов можно использовать встроенную функцию
GENERATE_SERIES:SELECT *
FROM generate_series(1, 10) AS number;
Функция отлично работает и с датами, позволяя создавать последовательность с нужным шагом или произвольный интервал:
SELECT *
FROM generate_series('2025-01-01'::date, '2025-01-07'::date, '1 day') AS day;
Можно использовать вместе с JOIN для заполнения пропусков в таблицах:
SELECT d.day, COALESCE(o.total, 0) AS total_orders
FROM generate_series('2025-01-01'::date, '2025-01-07'::date, '1 day') AS d(day)
LEFT JOIN orders o ON o.order_date = d.day;
🔥 Подходит для аналитики, построения сквозных временных рядов и подготовки тестовых наборов данных без лишних ручных операций.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍9🤝4
В этой шпаргалке собраны ключевые команды для создания, изменения и удаления пользователей, назначения и отзыва прав, а также проверки текущих ролей и сессий. Они применяются при управлении безопасностью базы данных, настройке доступа и аналитической работе с ролями.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍10❤2🤝2
Например,
SELECT выбирает данные из таблицы, а JOIN позволяет объединять несколько таблиц в один запрос.На картинке — все основные группы SQL-команд: от работы с данными (
DML) и структурой базы (DDL) до выборок (DQL), функций и прав доступа (DCL). Сохрани, чтобы не забыть!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18❤9👍7🤝2