Чему вы научитесь
- Писать подзапросы в WHERE, SELECT и FROM: «дороже среднего», «доля от общего»
- Находить «то, чего нет» через NOT EXISTS, NOT IN и LEFT JOIN — и обходить ловушку с NULL
- Сравнивать «внутри своей группы» коррелированными подзапросами: последний заказ каждого клиента
- Считать агрегат от агрегата через подзапрос в FROM
- Раскладывать длинные запросы на шаги с помощью WITH и переписывать чужие «спагетти»
- Строить календари и ряды чисел рекурсивным WITH
- Обходить иерархии вниз и вверх: подчинённые, цепочка начальников, путь от корня
- Решать одну задачу разными способами и понимать, когда они равнозначны
О курсе
Учимся отвечать на вопросы, которые не решаются одним SELECT: дороже среднего, клиенты без заказов, последний заказ каждого, оргструктура рекурсией. Длинные запросы — по шагам через WITH. 128 задач с разбором, MySQL 8 в браузере.
Для кого этот курс
- Начинающие аналитики данных и продуктовые аналитики
- Маркетологи и менеджеры, которые сами пишут запросы для отчётов
- Тестировщики и разработчики, которым нужно читать и писать составные SQL-запросы
- Все, кто готовится к собеседованию: «последний заказ каждого клиента», «клиенты без заказов» и рекурсия по оргструктуре — классика интервью
Начальные требования
Уверенный SELECT с WHERE, GROUP BY, HAVING и JOIN (в том числе LEFT JOIN). Если этого пока нет — пройдите бесплатные курсы линейки: «SQL с нуля» и «JOIN в SQL простым языком». В начале курса есть разминка, чтобы проверить себя.
Преподаватели курса
Нагрузка
4–5 часов в неделю, всего 30–35 часов (около 2 месяцев)