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

Модули проходятся по порядку: каждый следующий опирается на предыдущий.

Модуль 1. Основы баз данных и SQL

7 уроков

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

Модуль 2. Базовый SQL-запрос

7 уроков

В каком порядке СУБД выполняет запрос, как выбрать нужные столбцы и убрать дубли, отфильтровать строки, не споткнуться о NULL и отсортировать результат.

Модуль 3. Логика и преобразование данных

4 урока

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

Модуль 4. Агрегирующие функции

6 уроков

Как свернуть множество строк в одно число, разложить итоги по группам через GROUP BY и HAVING и не ошибиться там, где в данных есть NULL.

Модуль 5. Соединения таблиц

7 уроков

Пять видов JOIN и когда какой нужен, откуда берутся дубликаты строк, что делает NULL в ключе соединения и как соединить таблицу саму с собой.

Модуль 6. Объединение результатов: UNION и UNION ALL

2 урока

Как склеить результаты нескольких запросов по вертикали, чем UNION отличается от UNION ALL и когда объединять, а когда соединять.

Модуль 7. Подзапросы и CTE

6 уроков

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

Модуль 8. Оконные функции

9 уроков

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

Модуль 9. Оптимизация запросов

5 уроков

Как прочитать план выполнения, когда индекс помогает, а когда мешает, и чем шардирование отличается от партицирования и репликации.