Сегодня разберём мини-задачу по геймификации: соберём отчёт по аномальным результатам и подозрительным сессиям.
Сегодня в задаче:
• Находим игроков с нереальными результатами;
• Выявляем короткие сессии с высоким счётом;
• Определяем группы игроков, которые могут кооперироваться.
Такой приём помогает не только в играх, но и в любых системах с прогрессом, баллами или рейтингами.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤6🔥5
В этой шпаргалке — set-операции SQL: от объединения уникальных и повторяющихся строк до пересечений и разностей выборок. Это основа для аналитики и репортинга, когда важно агрегировать данные из разных источников и строить комплексные отчёты.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥9❤3🤝2
UPSERT: вставляем или обновляем запись!
Нередко требуется добавить данные без риска дубликата. Реализуем
Задаём таблицу:
Пробная вставка:
Результат:
🔥 Такой приём избавляет от дубликатов и делает вставку надёжной.
➡️ SQL Ready | #практика
Нередко требуется добавить данные без риска дубликата. Реализуем
UPSERT — вставка при отсутствии и обновление при конфликте.Задаём таблицу:
CREATE TABLE users (
id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
email TEXT UNIQUE NOT NULL,
login_count INT NOT NULL DEFAULT 0
);
Пробная вставка:
INSERT INTO users (email, login_count)
VALUES ('alice@mail.com', 1);
UPSERT при конфликте (увеличиваем счётчик и сразу возвращаем результат):INSERT INTO users AS u (email, login_count)
VALUES ('alice@mail.com', 1)
ON CONFLICT (email) DO UPDATE
SET login_count = u.login_count + EXCLUDED.login_count
RETURNING email, login_count;
Результат:
email | login_count
----------------+------------
alice@mail.com | 2
🔥 Такой приём избавляет от дубликатов и делает вставку надёжной.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤10🔥5🤝1
Срок обещан один, а товар приехал позже - это сразу удар по доверию клиента и показателям сервиса.
Сегодня в задаче:
• Сравним обещанную дату доставки с фактической;
• Посчитаем количество дней задержки;
• Вернём список всех заказов с опозданием.
В результате получаем инструмент для контроля логистики: видно, где сбои и на сколько дней выходят из графика. Это основа для улучшения SLA и переговоров с перевозчиками.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤9🔥5🤝1
В этой шпаргалке — практичные приёмы условной логики, которые заменяют громоздкие подзапросы. С их помощью можно проверять NULL, подставлять значения по умолчанию, строить бизнес-правила прямо в запросах и гибко фильтровать данные в реальной аналитике.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤6🔥6🤝2