Курсы · бесплатно, без регистрации

Курс SQL с нуля: бесплатно, онлайн, с проверкой задач

30 уроков и 91 задача на учебной базе авиакомпании: аэропорты, рейсы, бронирования и билеты. В каждом уроке — короткое объяснение, разбор готового запроса и три задачи, которые проверяет сервер. От первого SELECT до JOIN, подзапросов и CTE.

  • 9 модулей, 30 уроков
  • 91 задача с проверкой
  • 8 таблиц, 2,3 млн строк
  • синтаксис PostgreSQL

Попробуйте запрос до того, как начать

Это та же база, на которой идут уроки. Запустите готовый запрос или поменяйте его: добавьте столбец, уберите LIMIT.

query.sqlбаза «Авиаперевозки» · 8 таблиц · 2,3 млн строк
Готовые запросы

Результат появится здесь. Запрос выполняется на той же учебной базе, что и в курсе.

Как устроен урок

  1. 01

    Идея

    Короткое объяснение одной конструкции и пример, который можно запустить на той же базе.

  2. 02

    Разбор

    Готовый запрос построчно: что делает каждая строка и что изменится, если её поменять.

  3. 03

    Три задачи

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

  4. 04

    Проверка

    Сервер выполняет запрос и сверяет результат с эталоном. Если не сошлось, видно, чем именно: столбцы, строки или значения.

Программа курса

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

  1. Модуль 0

    Как устроены данные

    Таблицы, строки и столбцы, первый запрос и связи между таблицами — для первого знакомства с базой данных

    Что будете уметь: Ориентироваться в базе: находить нужную таблицу и столбец, запускать первый запрос и понимать, как таблицы ссылаются друг на друга.

  2. Модуль 1

    Первые запросы

    SELECT и FROM, выбор столбцов, алиасы, сортировка, LIMIT, DISTINCT и простые вычисления

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

  3. Модуль 2

    Фильтрация строк

    WHERE и сравнения, AND/OR/NOT, IN и BETWEEN, поиск по шаблону и пустые значения

    Что будете уметь: Отбирать нужные строки условием WHERE: по числам, тексту и датам, по нескольким условиям сразу, по шаблону и по пустым значениям.

  4. Модуль 3

    Функции: числа, строки и даты

    Считаем, округляем, режем строки и работаем с датами и интервалами прямо в SELECT

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

  5. Модуль 4

    Агрегаты и группировка

    COUNT, SUM, AVG, MIN, MAX, GROUP BY и HAVING — от тысяч строк к короткой сводке

    Что будете уметь: Сворачивать таблицы в сводки: считать вылеты, выручку и средние задержки по статусам, неделям и аэропортам и оставлять только нужные группы.

  6. Модуль 5

    Соединения таблиц: JOIN

    Собираем результат из нескольких таблиц: рейс, аэропорт, самолёт и пассажиры в одном запросе.

    Что будете уметь: Соединять две и больше таблиц через JOIN, подключать одну таблицу дважды, находить строки без пары через LEFT JOIN и не завышать суммы, когда JOIN размножает строки.

  7. Модуль 6

    CASE и NULL

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

    Что будете уметь: Строить категории через CASE, заменять и обходить NULL и собирать сводки с условной агрегацией.

  8. Модуль 7

    Подзапросы и CTE

    Запрос внутри запроса: подзапросы в WHERE, SELECT и FROM, проверка наличия через EXISTS, шаги с именами через WITH

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

  9. Модуль 8

    Множества и итоговый кейс

    UNION, INTERSECT, EXCEPT и итоговый кейс: направления, выручка и загрузка рейсов

    Что будете уметь: Склеивать и сравнивать результаты запросов и собирать из JOIN, GROUP BY, CASE и CTE законченный ответ на рабочий вопрос.

Примеры задач

Формулировки — из самого курса. Задачи про одну и ту же авиакомпанию: к концу курса вы знаете её данные, а не только синтаксис.

Кому подойдёт и чем отличается

Курс рассчитан на тех, кто SQL не писал или писал от случая к случаю: начинающих аналитиков, продакт-менеджеров, маркетологов, тестировщиков — всех, кому нужно самому доставать данные из базы, а не ждать выгрузку.

От видеокурса он отличается тем, что смотреть нечего: объяснение занимает экран, дальше вы пишете запросы. От задачника — тем, что темы идут по порядку, а перед задачами есть разбор. Ошибки здесь тоже часть урока: пороги в задачах подобраны так, что перепутанные «больше» и «не меньше» дают другой ответ, и проверка это покажет.

Если хочется сначала понять маршрут целиком, прочитайте как выучить SQL с нуля. Сравнение с другими площадками — в обзоре SQL-тренажёров и песочниц.

Что дальше

Частые вопросы

Курс правда бесплатный?

Да. Сейчас открыты все 30 уроков и 91 задача — без оплаты и без регистрации. Аккаунт нужен только затем, чтобы прогресс сохранялся между устройствами.

Подойдёт ли курс, если я никогда не видел базу данных?

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

Нужно ли что-то устанавливать?

Нет. Редактор и учебная база открываются в браузере, запрос выполняет сервер. Курс работает на компьютере и на телефоне.

Какой диалект SQL в курсе?

Курс учит SQL, который работает в PostgreSQL. Запросы выполняет DuckDB — его синтаксис к PostgreSQL очень близок, а там, где базы расходятся (деление целых, порядок NULL при сортировке, алиас в WHERE), урок говорит об этом прямо, и проверка предупреждает, если запрос не сработает в PostgreSQL.

Выдаётся ли сертификат?

Нет. Курс не выдаёт сертификатов и документов об образовании. Результат — умение писать запросы, которое проверяется на собеседовании задачей, а не бумагой.

Сколько времени занимает курс?

Срока и дедлайнов нет: урок — это одна конструкция и три задачи, его удобно проходить за один подход. Всего в курсе 9 модулей, проходить их можно в своём темпе и возвращаться к любому уроку.

Что делать после курса?

Два пути. «Продвинутый SQL» — оконные функции, сессии, JSON, продуктовые метрики и эксперименты на той же базе. Симулятор SQL-аналитика — сюжетный курс, где запросы пишут в ответ на вопросы команды, а не по заданию из учебника.