Авторский канал про Базы Данных и SQL
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!
Cотрудничество: @energy_c
РКН: https://clck.ru/3QREBc
Post #890
4.09K




- ❤ 29
- 👍 10
- 🔥 6
- 🤝 2
SQ @sql_ready
Showing posts older than #897 · Back to latest









• Считаем выручку по каждому товару.
• Находим долю и нарастающий итог по продажам.
• Присваиваем класс A / B / C в зависимости от вклада в общую выручку.





CASE WHEN прямо внутри агрегатов.• Как суммировать значения по нужному статусу.
• Как посчитать количество подходящих строк.
• Как записать несколько условий в одном запросе.
SELECT
registration_date,
COUNT(*) AS new_users
FROM users
GROUP BY registration_date
ORDER BY registration_date;
SELECT
registration_date,
COUNT(*) AS new_users,
SUM(COUNT(*)) OVER (ORDER BY registration_date) AS total_users
FROM users
GROUP BY registration_date
ORDER BY registration_date;
SELECT
registration_date,
ROUND(100.0 * COUNT(*) / SUM(COUNT(*)) OVER (), 2) AS percent_total
FROM users
GROUP BY registration_date
ORDER BY registration_date;





Сделал для вас наглядную шпаргалку с разницей между NF и примерами таблиц с денормализованной структурой. Существует 6 нормальных форм, но в большинстве случаев ограничиваются 3NF или BCNF.