Мини-курс

SQL с нуля

8 коротких уроков на одной учебной базе книжного магазина: от первого SELECT до отчётов по нескольким таблицам. Научитесь сами получать ответы из данных.

  • 8 уроков и итоговый тест
  • ≈ 3 ч на весь курс
  • Бесплатно, без регистрации
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. Тест

Коротко об SQL

SQL — язык запросов к базам данных. На нём спрашивают у базы: «сколько заказов пришло в июне», «какие книги дороже средней», «кто из клиентов ещё ничего не купил». Запрос читается почти как английская фраза, а ответ приходит таблицей. SQL нужен аналитикам, тестировщикам, разработчикам, маркетологам и продакт-менеджерам — всем, кто работает с данными приложения, а не только программистам.

Зарплаты сильно зависят от города и опыта — смотрите актуальные вакансии: вакансии со знанием SQL на hh.ru.

Зачем учить SQL

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

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

В каждом уроке — запросы с разбором и результатом, задание с решением и мини-тест.

Кому подойдёт, а кому нет

Скорее подойдёт, если

  • Работаете с таблицами и хотите получать отчёты быстрее, чем фильтрами и формулами
  • Думаете о профессии аналитика данных или тестировщика
  • Видели в вакансиях строчку «знание SQL» и хотите её закрыть
  • Хотите понимать, как устроены данные в приложениях и сайтах

Скорее не подойдёт, если

  • Ищете оптимизацию запросов, индексы и администрирование баз — курс вводный
  • Не работаете с данными и не планируете
  • Не готовы писать запросы текстом: кнопок в курсе нет, всё через запросы

Программа: 8 уроков

  1. Урок 1из 8 пройдензнаете

    База данных и первый запрос SELECT

    Что такое база данных и СУБД, из чего состоит таблица, зачем нужен первичный ключ, как написать первый запрос SELECT и где тренироваться без установки программ.

    15 мин · Дальше: Отбор строк: WHERE, AND, OR, IN, BETWEEN и LIKE
    Открыть
  2. Урок 2из 8 пройдензнаете

    Отбор строк: WHERE, AND, OR, IN, BETWEEN и LIKE

    Как оставить в результате только нужные строки: условие WHERE, знаки сравнения, несколько условий через AND и OR, скобки, списки IN, диапазоны BETWEEN и поиск по образцу LIKE.

    20 мин · Дальше: Сортировка, LIMIT, DISTINCT и вычисления в запросе
    Открыть
  3. Урок 3из 8 пройдензнаете

    Сортировка, LIMIT, DISTINCT и вычисления в запросе

    Как упорядочить результат через ORDER BY, взять первые строки с LIMIT и OFFSET, убрать повторы с DISTINCT и посчитать новый столбец прямо в запросе с понятным именем через AS.

    20 мин · Дальше: Итоги по таблице: COUNT, SUM, AVG и пустые значения NULL
    Открыть
  4. Урок 4из 8 пройдензнаете

    Итоги по таблице: COUNT, SUM, AVG и пустые значения NULL

    Как посчитать количество строк, сумму, среднее, минимум и максимум, округлить результат через ROUND, что такое NULL, почему его нельзя сравнивать знаком = и как подставить значение через COALESCE.

    20 мин · Дальше: Группировка: GROUP BY и HAVING
    Открыть
  5. Урок 5из 8 пройдензнаете

    Группировка: GROUP BY и HAVING

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

    25 мин · Дальше: Соединение таблиц: JOIN и LEFT JOIN
    Открыть
  6. Урок 6из 8 пройдензнаете

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

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

    25 мин · Дальше: Подзапросы и CASE: запрос в запросе и условия в столбцах
    Открыть
  7. Урок 7из 8 пройдензнаете

    Подзапросы и CASE: запрос в запросе и условия в столбцах

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

    20 мин · Дальше: Изменение данных: INSERT, UPDATE, DELETE и транзакции
    Открыть
  8. Урок 8из 8 пройдензнаете

    Изменение данных: INSERT, UPDATE, DELETE и транзакции

    Как добавлять, изменять и удалять строки, почему UPDATE и DELETE без WHERE опасны, как проверить себя через SELECT и откатить ошибку транзакцией. И что учить после вводного курса.

    25 мин
    Открыть

Итоговый тест

16 вопросов по всем урокам, около 12 минут. В конце — разбор, какие темы повторить, и вывод по вашим ответам: стоит ли идти в SQL и аналитику дальше.

Пройти тест

Что дальше

Если тема зацепила, продолжить можно так.

Бесплатно, своими силами

  • Решайте по 2–3 задачи в день на sql-ex.ru или в бесплатных тренажёрах по SQL на Stepik — регулярность важнее объёма.
  • Поставьте бесплатный DBeaver и подключите к нему файл SQLite: так выглядит рабочее место аналитика.
  • Возьмите открытые данные — например, с портала data.mos.ru, — загрузите в таблицу и ответьте запросами на пять своих вопросов.
  • Перепишите два-три запроса курса через WITH: это первый шаг к сложным отчётам.
  • Сохраняйте удачные запросы с пояснениями в репозиторий на GitHub — это уже портфолио.

С курсом и наставником

Готовим подборку курсов: цена, срок, формат и есть ли помощь с работой. Сравним несколько школ, а не одну «лучшую».

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

Нужно ли уметь программировать?

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

Что установить для практики?

Ничего. Все запросы курса работают в онлайн-песочнице sqliteonline.com, прямо в браузере. В первом уроке есть готовый скрипт, который создаёт учебные таблицы.

Какую базу данных изучаем?

Основу SQL, общую для всех баз: PostgreSQL, MySQL, SQLite, Microsoft SQL Server. Примеры выполняются в SQLite, а где базы отличаются, это сказано прямо в уроке.

Чем SQL отличается от Excel?

В Excel данные видно и правят руками, а SQL получает ответ запросом из таблиц любого размера — хоть из миллионов строк. Excel удобен для небольших файлов и оформления, SQL — для работы с базой приложения. Если таблицы пока в новинку, начните с курса «Excel и Google Таблицы».

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

Около трёх часов: 8 уроков по 15–25 минут и итоговый тест. Удобный темп — урок в день, с запросами в песочнице.

Это бесплатно?

Да, и без регистрации. Сайт зарабатывает на партнёрских программах онлайн-школ — как это устроено, рассказываем на странице «О проекте».