19 тем · ~95 минут · 57 тестов

Лекция «Логика SQL-запросов — как читать чужой запрос, ставить задачу и ловить завышенную сумму»

Три запроса без единой ошибки вернули цену клика 3 142,86 ₽, 10 857,14 ₽ и 22 000,00 ₽ на одних и тех же данных, а сумма заказов после лишнего соединения выросла с 25 600 ₽ до 57 800 ₽. Реляционная модель, гранулярность, логический порядок обработки, пять видов соединения и пять счётчиков проверки — чтобы читать запросы, а не верить им.

Для кого

Для бизнес-аналитиков, которым надо доставать данные самим вместо очереди к разработчику — SELECT, JOIN, GROUP BY и агрегаты на заказах, клиентах и статусах, сверка отчётов и выгрузка под требования. И для маркетинговых аналитиков, которым таблицы, связи и агрегация нужны как способ мышления: читать и формулировать запросы к сессиям, кликам, кампаниям и расходам, не тренируя синтаксис и не веря бюджету, выросшему втрое от лишнего соединения. Предзнаний не требуется: начинаем с вопроса «строка в базе — это что».

Базовый уровень — с нуля
Что получишь

После лекции вы сможете

  • Читать чужой запрос по логическому порядку обработки и говорить, какой набор строк он вернёт и с какой гранулярностью
  • Отвечать на вопрос «одна строка — это что» до того, как поверить числу, и проверять заявленный ключ одним запросом за двадцать секунд
  • Ловить завышение суммы после соединения по неуникальному ключу — по счётчику строк, а не по ощущению «цифра странная»
  • Замечать внешнее соединение, которое стало внутренним из-за условия в WHERE, и терять из-за этого клиентов без покупок
  • Различать три разных счётчика, три позиции подзапроса и оконную функцию, которая не схлопывает строки
  • Ставить задачу разработчику или языковой модели пятью пунктами: гранулярность, период и поле, фильтры, пустые значения, контрольная цифра
  • Проверять результат пятью счётчиками и сводить итог с рекламным кабинетом, бухгалтерией или CRM
Программа

19 тем и 57 тестов на понимание

Каждая тема — один экран и одна мысль. В конце темы — ситуационные вопросы: ответили верно, идёте дальше.

Часть 1. Как устроены данные

1

Что эта лекция даёт и чего не даёт

2

Реляционная модель: таблица — это утверждение о мире

3

Связи и две схемы, на которых считается вся лекция

4

Гранулярность: единственный вопрос перед любым запросом

5

Нормализация, витрина и вопрос «откуда эта таблица»

Часть 2. Как читается запрос

6

Логический порядок: запрос читается не сверху вниз

7

WHERE и HAVING фильтруют разные вещи

8

Пять видов соединения на одних и тех же данных

Часть 3. Где ломается счёт

9

LEFT JOIN, который молча стал INNER

10

Размножение строк: как соединение завышает выручку

11

Три цены клика на одних данных

12

Три разных COUNT, и все три правильные

13

NULL: третье значение, которое ломает отбор

Часть 4. Инструменты аналитика

14

GROUP BY: что имеет право оказаться в SELECT

15

Подзапрос, CTE и окно: три способа не схлопнуть данные

16

Диалекты: логика одна, синтаксис — нет

17

Звёздочка, LIMIT и вежливость к боевой базе

Часть 5. Заявка и проверка

18

Заявка на выгрузку: пять пунктов для разработчика и для ИИ

19

Пять счётчиков вместо интуиции и что делать в понедельник

Темы лекции: аналитика, SQL, базы данных, реляционная модель, JOIN, GROUP BY, агрегаты, NULL, гранулярность, витрины, PostgreSQL, бизнес-аналитика, маркетинговая аналитика, 2026

Обновлено: 1 сентября 2026

Как устроено обучение

Читаете, отвечаете, видите результат

Интерактивная лекция с тестами: тема — экран текста, за ним вопрос по этой же теме. Ни видео, ни вебинаров, ни дедлайнов.

Тесты внутри тем

57 тестов по ходу лекции — ситуационных, на понимание, а не на зубрёжку.

Старт — бесплатно и сразу

Первые темы открыты без регистрации: нажали — учитесь. Понравилось — продолжите по аккаунту, полный доступ от 99 ₽. Прогресс сохраняется на той же теме.

Вопросы

Коротко о главном

Сколько времени займёт лекция?
Около 95 минут на 19 тем. Прогресс сохраняется, поэтому лекцию можно проходить частями и возвращаться к ней позже.
Это бесплатно?
Начало — да: первые 1 тема открыты сразу, без регистрации. После бесплатной регистрации откроются темы до 2-й — вместе с частью из 57 тестов и монетами за верные ответы. Полная лекция — 99 ₽ навсегда, либо подписка на все лекции платформы от 499 ₽ в месяц.
Что у меня останется после лекции?
Девятнадцать тем позади. Вы начали с вопроса «строка в базе — это что» и заканчиваете тем, что берёте чужой запрос на сорок строк и говорите, какой набор строк он вернёт и где именно врёт. Перед каждым числом вы спрашиваете про гранулярность и не берёте сумму из таблицы, которую размножило соединение: 25 600 ₽ превращаются в 57 800 ₽ от одного JOIN с позициями, а расход 22 000 ₽ — в 154 000 ₽, и цена клика на одних данных выходит 3 142,86 ₽, 10 857,14 ₽ или 22 000,00 ₽. Вы досматриваете LEFT JOIN до WHERE и знаете, почему 4 800 клиентов превращаются в 3 190. Различаете три счётчика, помните, что пустое значение — это «неизвестно», а не ноль, и что оно выпадает из отбора молча. Заказываете выгрузку пятью пунктами вместо одной фразы и проверяете результат пятью счётчиками. И держите границу: логика везде одна, синтаксис свой у каждой СУБД, доступ выдают правами, а эталона правильности в вашей работе нет — его приносите вы.
Я научусь писать запросы после этой лекции?
Обещание другое и оно точное: читать чужой запрос, формулировать свою задачу словами и проверять результат счётчиками. Умение писать берётся практикой на своих данных, и лекция говорит об этом в первой же теме, а не в финале.
Примеры на PostgreSQL — а у нас MySQL или ClickHouse. Подойдёт?
Да. Логика общая: порядок обработки, гранулярность, поведение пустых значений, механика соединения и размножения строк. Отдельная тема разбирает, что именно расходится между PostgreSQL, MySQL, ClickHouse, SQL Server и Oracle — от способа взять первые десять строк до строгости группировки и соединения.

Логика SQL-запросов — как читать чужой запрос, ставить задачу и ловить завышенную сумму — открывается прямо сейчас

19 тем, 57 тестов и около 95 минут вашего времени. Первые темы — бесплатно и без регистрации: начните и решите по делу, а не по описанию.

Начать лекцию →

Уже проходили? Личный кабинет помнит, на чём вы остановились.