Экспедиция · Хранилище-9

Курс SQL — начни с пролога

Первый урок: Как здесь учиться

0/77
уроков пройдено
0· +10 за урок

Интерактивный курс SQL · 12 глав · 77 уроков

Пиши SQL на живой базе

От первого SELECT до оконных функций, EXPLAIN и финального аналитического отчёта.

Каждый запрос выполняется прямо в уроке, на настоящей базе, а не просто показан на картинке. Ещё есть квизы, задачи «почини запрос» и гейты из тренажёра.

  • живой SQL в каждом уроке
  • задачи с собеседований
  • сертификат и экзамен

PostgreSQL · MySQL · ClickHouse

схема «Котомаркета»
FKcustomersPK idnamecityordersPK idFK customer_idtotalstatus
postgresql · урок 4.2
SELECT   c.name, count(*) AS orders,
         sum(o.total) AS revenue
FROM     orders o
JOIN     customers c ON c.id = o.customer_id
WHERE    o.status = 'paid'
GROUP BY c.name
ORDER BY revenue DESC LIMIT 4;
23 ms · 4 строки
nameordersrevenue
Мурка412 480
Барсик39 120
Рыжик37 640
Сима25 300
12
глав
77
уроков
16
бесплатно
3
диалекта SQL

Результат

Один вопрос — шесть уровней SQL

Вопрос «Кто приносит магазину деньги?» не меняется. Меняется SQL, которым ты на него отвечаешь.

01 · SELECTПолучать нужные строки
SELECT id, customer_id, total
FROM orders
WHERE status = 'paid'
ORDER BY total DESC LIMIT 3;

результат

idcustomer_idtotal
104274 900
101734 100
109973 780

Глава 2 — фильтры, сортировка, ограничение выборки.

Механика

Из чего собран урок

Не видео и не конспект. Шесть видов блоков: теория есть в каждом уроке, остальное ставится под тему — живой запрос, схема, квиз, «почини запрос», а глава закрывается задачей из тренажёра.

01

Теория

Короткий разбор одной идеи: без воды и советов «прочитайте документацию».

02

Схема

Схема связи или операции: что на самом деле происходит со строками.

03

Живой SQL

Запрос к настоящей базе выполняется прямо на странице. Меняй его и запускай снова.

04

Квиз

Вопрос на понимание, а не на память: почему результат именно такой.

05

Почини запрос

SQL-запрос с ошибкой, который надо исправить, — самый честный способ проверить себя.

06

Задача на допуск

Глава заканчивается задачей из тренажёра, а не галочкой «прочитано».

Сигнал «Котомаркет» · Хранилище-9 · 2184

База, которую ты восстанавливаешь сам

От интернета старой Земли уцелел лишь один фрагмент: база магазина «Котомаркет». С каждой главой открывается новый уровень доступа к архиву: сначала одна таблица, потом связи, а затем вся система. В последнем блоке тебя ждёт послание К.

Сюжет не заменяет обучение, а задаёт порядок тем. Каждый уровень допуска соответствует реальному этапу изучения SQL.

Программа

Пять уровней допуска

12 глав — не просто список из 12 равнозначных пунктов, а пять ступеней: доступ к данным → связи и расчёты → аналитический SQL → управление системой → финальный отчёт.

I

ACCESS 01

3 главы · 16 уроков · 4 ч 21 мин

Получить доступ к данным

Что такое база, как устроена таблица и как задать ей точный вопрос

Ты впервые разговариваешь с базой — и она отвечает ровно то, что ты просил.

00Бесплатно

Старт в SQL

Выполнишь первый запрос к настоящей базе — в браузере, без установки чего-либо.

SELECT 1песочница
3 урока · 15 мин
01Бесплатно

Базы данных без тумана

Перестанешь путать базу и СУБД и научишься читать схему из пяти таблиц как карту.

СУБДтаблицы и ключиER-схема
5 уроков · 1 ч 10 мин
02Бесплатно

SELECT: достаём нужные данные

Достанешь из таблицы ровно те строки, которые нужны: фильтры, диапазоны, сортировка, CASE.

WHERENULLORDER BYDISTINCT
8 уроков · 2 ч 56 мин
Уровень допуска 01 · пройден16 / 16 бесплатных уроков

Здесь заканчивается бесплатная часть

К этому моменту ты уже попробовал всё, что есть в курсе: живой SQL на настоящей базе, схемы, квизы, «почини запрос» и задачу на допуск.

  • понимаешь, что такое таблица, ключ и схема
  • пишешь SELECT с фильтрами и сортировкой
  • правильно работаешь с NULL и не путаешься в трёхзначной логике
  • уже прошёл первый мастер-чек в тренажёре

Дальше

Агрегаты, JOIN, CTE, оконные функции, DDL, EXPLAIN и капстоун — вся система «Котомаркета». По одному уроку в каждой платной главе остаётся открытым: ещё 9 уроков можно прочитать без оплаты.

II

ACCESS 02

4 главы · 29 уроков · 15 ч 49 мин

Связать и посчитать

Агрегаты, JOIN, подзапросы и CTE, строки и даты

Из отдельных строк появляется анализ: связи собираются, тысячи строк сворачиваются в метрику.

03Бесплатных уроков: 1 PRO

Агрегация: считаем бизнес-показатели

Превратишь тысячи строк в одну понятную метрику и не попадёшься на HAVING против WHERE.

COUNT / SUMGROUP BYHAVING
7 уроков · 2 ч 55 мин
04Бесплатных уроков: 1 PRO

JOIN: собираем данные из связей

Соберёшь ответ из нескольких таблиц и научишься замечать размножение строк до того, как оно испортит цифру.

INNER / LEFTFULLanti-joinfan-out
8 уроков · 3 ч 5 мин
05Бесплатных уроков: 1 PRO

Подзапросы и CTE: запросы в несколько ходов

Разложишь сложный запрос на понятные шаги через WITH — вместо трёхэтажной вложенности.

подзапросыWITHEXISTSUNION
8 уроков · 5 ч 16 мин
06Бесплатных уроков: 1 PRO

Строки, даты и типы: приводим данные в форму

Приведёшь грязные строки и даты в форму, пригодную для отчёта: интервалы, обрезка, приведение типов.

date_truncинтервалыCAST
6 уроков · 4 ч 33 мин
ДоказательствоОдин SQL — три среды

Курс построен на PostgreSQL, но SQL не ограничивается одним движком. Запрос «выручка по месяцам» в трёх диалектах пишется по-разному, и курс показывает, в чём именно различия.

SELECT date_trunc('month', created_at)::date AS month,
       sum(total) AS revenue
FROM orders GROUP BY month;

PostgreSQLПервый день месяца — функция усечения даты. (диалект курса)

В тренажёре у каждого диалекта своя песочница: PostgreSQL, MySQL и ClickHouse запускаются на настоящих серверах.

III

ACCESS 03

1 глава · 8 уроков · 5 ч 31 мин

Аналитический SQL

Оконные функции — ранги, скользящие суммы, сравнение с соседом

До этого ты писал запросы. Здесь ты начинаешь думать как сильный SQL-пользователь.

07Бесплатных уроков: 1 PRO

Оконные функции: аналитика без потери строк

Посчитаешь ранги, доли и накопительные суммы, не потеряв ни одной строки — то, ради чего SQL берут в аналитику.

OVER()PARTITION BYLAG / LEADtop-N
8 уроков · 5 ч 31 мин
ДоказательствоЗадача с собеседования

Задачи-гейты в главах — не учебные примеры. Они взяты из того же каталога, что и задачи в тренажёре, а их формулировки — из реальных собеседований в российских компаниях.

ЯндексVKСберOzonWildberriesAvito

Условие. Для каждой категории найди товар с максимальной выручкой. Если максимум делят несколько товаров, верни все.

ожидаемый результат

categoryproductrevenue
кормМяу-микс 4 кг184 200
игрушкиМышь-дразнилка96 400
игрушкиЛазер PRO96 400

В двух последних строках максимум совпал, поэтому ROW_NUMBER() здесь не подходит.

твой ответпроверка на настоящей базе
WITH ranked AS (
  SELECT category, product, revenue,
         rank() OVER (
           PARTITION BY category
           ORDER BY revenue DESC
         ) AS rnk
  FROM product_revenue
)
SELECT * FROM ranked WHERE rnk = 1;
RANK() вместо ROW_NUMBER() — иначе при равенстве потеряешь товар.
IV

ACCESS 04

3 главы · 18 уроков · 12 ч 4 мин

Управлять системой

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

База перестаёт быть чёрным ящиком: ты меняешь данные, проектируешь схему и читаешь план.

08Бесплатных уроков: 1 PRO

DML: меняем данные без паники

Научишься менять данные без страха: транзакция, точный WHERE, RETURNING и откат.

INSERT / UPDATEUPSERTTRANSACTION
6 уроков · 4 ч 32 мин
09Бесплатных уроков: 1 PRO

DDL: схема, которой можно доверять

Спроектируешь схему, которой можно доверять: типы, ограничения, нормальные формы, миграции.

CREATE TABLECONSTRAINTнормализация
6 уроков · 3 ч 37 мин
10Бесплатных уроков: 1 PRO

Под капотом PostgreSQL: транзакции, планы, индексы

Прочитаешь план выполнения и поймёшь, почему запрос медленный — и что тут сделает индекс.

EXPLAINиндексыACIDизоляция
6 уроков · 3 ч 55 мин
ДоказательствоКурс не заканчивается на SELECT

На последнем уровне запрос уже не просто текст, а дерево операций. Ты открываешь EXPLAIN ANALYZE, видишь Seq Scan там, где ожидал Index Scan, создаёшь индекс и смотришь, как меняется план.

  • читать план и находить в нём узкое место
  • понимать, когда индекс поможет, а когда только замедлит запись
  • объяснять ACID и уровни изоляции через поведение базы, а не по учебнику
V

ACCESS 05

Финальная передача

Капстоун: полный аналитический отчёт по архиву — и послание К.

11Бесплатных уроков: 1 PRO

Капстоун: аналитика магазина

Соберёшь финальный аналитический отчёт по всему архиву — и вскроешь последний блок.

капстоунотчётсертификат
6 уроков · 4 ч 28 мин

Финишная черта

Чем заканчивается курс

Не «ещё четыре фичи», а результат, с которым ты закончишь курс.

Результат после курса

77 / 77 · экзамен пройден · сертификат доступен

Финал — не просто кнопка «завершить». Капстоун-отчёт завершает работу с архивом, экзамен проверяет, что ты сам пишешь запросы, а у сертификата появляется публичная страница с проверкой подлинности.

Дуэли 1-на-1

Та же задача, два участника, время на табло. Практика, от которой сложно оторваться.

Рейтинг

Уроки и задачи дают силу, которая учитывается в общем рейтинге Арены.

Экзамен

Отдельная проверка на время: без подсказок и возможности сразу пересдать.

Первый запрос — прямо сейчас

Первые три главы доступны бесплатно. Это 16 уроков: устройство базы, SELECT, фильтры и первый полезный отчёт.

Начать бесплатно: 16 уроков