Практика


#1 Практика: Аудит "пустого" трафика (WHERE =)

Задача

Менеджер заметил странный трафик 5 января 2026 года: переходы были, а продаж нет. Нужно подтвердить это цифрами из базы.

Требование: Вывести источник, дату, визиты и продажи. Отфильтровать строго за '05.01.2026'.

Рабочее решение (SQL)
SELECT source_raw, date_raw, visits_raw, goal_sales_raw
FROM analytics_events
WHERE date_raw = '05.01.2026'
LIMIT 5
Разбор логики
Грабли (Типичная ошибка)

Потеря колонок в выборке.
Часто новички пишут фильтр в WHERE, но забывают добавить саму метрику (например, продажи) в SELECT. Получается отчет, который фильтрует правильно, но не показывает ответ на вопрос «А сколько было денег?».

#Практика: Фильтрация чисел (WHERE >)

Задача

Найти источники трафика с высокой доходностью (выручка более 50 000 руб.).

Рабочее решение (SQL)
SELECT source_raw, users_raw, revenue_raw
FROM analytics_events
WHERE revenue_raw > 50000
LIMIT 3

Главные выводы (Запомнить!)

Типичная ошибка

Попытка написать число с пробелом или валютой (50 000 руб.). SQL — это калькулятор, он понимает только чистые цифры.

#Практика: Текстовые фильтры (WHERE =)

Задача

Выявить записи с аномальным показателем отказов (100%), чтобы понять, в какие дни и из каких источников шел некачественный трафик.

Рабочее решение (SQL)
SELECT date_raw, source_raw, bounce_rate_raw
FROM analytics_events
WHERE bounce_rate_raw = '100,00%'
LIMIT 7
Главные выводы
Типичная ошибка

Использование SELECT только для тех полей, по которым фильтруем. Всегда добавляй контекст (например, date_raw), чтобы отчет имел смысл для человека, а не только для машины.

Базовые правила SELECT для аналитика

1. Любой запрос начинается с бизнес-вопроса

Плохие запросы отвечают на «что SQL смог».
Хорошие — на «что я хочу понять».


2. SELECT — только нужные поля


3. FROM — всегда реальная таблица


4. ORDER BY обязателен почти всегда

Без сортировки:


5. Направление сортировки указывай явно

ORDER BY date_raw DESC

Почему:


6. Иерархия сортировки

Всегда сверху вниз по смыслу:

  1. Время (date_raw)

  2. Деньги (revenue_raw)

  3. Конверсии (goal_sales_raw)

  4. Трафик (visits_raw)

ORDER BY date_raw DESC, revenue_raw DESC

7. LIMIT — только после сортировки

Иначе ты смотришь:


8. Рабочий запрос ≠ правильный отчет

SQL может выполниться:

И при этом быть логически неверным.


Контрольное правило (запомни намертво)

Если ты не можешь одним предложением сказать,
что именно показывает запрос,
значит запрос плохой.