Чему вы научитесь
- Писать SQL-запросы для выборки, фильтрации и сортировки данных
- Использовать SELECT, WHERE, DISTINCT, ORDER BY и условия поиска
- Работать с NULL, строками, числами, датами и выражением CASE
- Группировать данные с помощью GROUP BY и фильтровать агрегаты через HAVING
- Применять COUNT, SUM, AVG, MIN, MAX и условные агрегаты
- Соединять таблицы с помощью INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN и SELF JOIN
- Создавать подзапросы и использовать EXISTS и NOT EXISTS
- Строить сложные запросы с помощью CTE и WITH
- Применять оконные функции, ROW_NUMBER, ранжирование, LAG и LEAD
- Добавлять, изменять и удалять данные с помощью INSERT, UPDATE и DELETE
- Проектировать таблицы и связи между ними
- Использовать PRIMARY KEY, FOREIGN KEY и ограничения целостности
- Понимать нормализацию и осознанно применять денормализацию
- Создавать представления и безопасно параметризовать SQL-запросы
- Понимать устройство индексов и причины медленной работы SQL-запросов
- Читать и анализировать планы выполнения запросов на концептуальном уровне
- Работать с транзакциями и понимать свойства ACID
- Разбираться в уровнях изоляции, блокировках и взаимных блокировках
- Понимать назначение пулов соединений и prepared statements
- Проектировать схемы данных и избегать распространённых SQL-антипаттернов
О курсе
SQL — один из основных инструментов для работы с данными в реляционных базах данных. Он используется разработчиками, аналитиками, тестировщиками, инженерами данных и другими IT-специалистами.
Этот курс позволяет изучить SQL с нуля и постепенно перейти от простых запросов к более сложным задачам проектирования, изменения и оптимизации баз данных. Обучение начинается с реляционной модели, структуры таблиц и базовых конструкций SELECT, WHERE, ORDER BY и DISTINCT.
Затем Вы научитесь работать с NULL, строками, числами и датами, применять CASE, агрегатные функции, GROUP BY и HAVING. Отдельный большой раздел посвящён связям между таблицами и различным видам JOIN.
После освоения базовых запросов рассматриваются подзапросы, EXISTS, CTE и оконные функции. Вы научитесь использовать ранжирование, оконные агрегаты, LAG и LEAD для решения более сложных задач обработки данных.
Курс не ограничивается чтением данных. Вы разберёте INSERT, UPDATE и DELETE, создание таблиц, ограничения, внешние ключи, изменение схемы, нормализацию и денормализацию.
Отдельное внимание уделяется производительности SQL. Вы узнаете, зачем нужны индексы, какую цену они имеют при записи данных, как концептуально устроен план выполнения запроса и какие типичные ошибки делают SQL медленным.
Также рассматриваются транзакции и свойства ACID, уровни изоляции, блокировки и взаимные блокировки. Эти знания помогают понимать не только синтаксис SQL, но и поведение базы данных при одновременной работе нескольких операций.
В завершающих разделах Вы познакомитесь с подключением приложений к базе данных, пулами соединений, подготовленными запросами, миграциями, резервным копированием, мониторингом и основными архитектурными подходами к работе с SQL.
Материал построен последовательно: от первых SELECT-запросов до проектирования схем, индексов, транзакций и практик написания качественного SQL. Теория закрепляется тестами и практическими заданиями.
Для кого этот курс
Начальные требования
Предварительное знание SQL не требуется
Опыт программирования не обязателен
Достаточно базовых навыков работы с компьютером
Желание самостоятельно выполнять практические задания и разбираться в работе с данными
Наши преподаватели
Как проходит обучение
Курс построен по принципу от простого к сложному. Сначала Вы изучаете новую концепцию и разбираете примеры SQL-запросов, после чего закрепляете материал тестами и практическими заданиями.
В каждом разделе внимание уделяется не только синтаксису команд, но и причинам их поведения, типичным ошибкам и практическим сценариям использования.
Вы последовательно пройдёте путь от первых SELECT-запросов до JOIN, подзапросов, CTE, оконных функций, проектирования схем, индексов и транзакций.
Обучение проходит в собственном темпе. К пройденным урокам и заданиям можно возвращаться для повторения материала.
Программа курса
Сертификат
Что вы получаете
- Системное понимание SQL и реляционных баз данных
- Навык написания запросов от простых SELECT до CTE и оконных функций
- Практический опыт работы с JOIN, группировками, подзапросами и изменением данных
- Понимание проектирования таблиц, ключей, связей и ограничений
- Знание принципов работы индексов и оптимизации SQL-запросов
- Понимание транзакций, ACID, изоляции и блокировок
- Навыки поиска типичных ошибок и SQL-антипаттернов
- Базу для дальнейшего изучения PostgreSQL, MySQL и других реляционных СУБД
- Сертификат Stepik после успешного завершения курса