язык

сложность

2

SQL

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

Молодые студенты всё чаще идут в аналитики данных. У джуна около 90 000 ₽ в месяц, у мидла около 180 000 ₽, у сеньора около 280 000 ₽.

На SQL собирают отчёты, ищут клиента, считают продажи за месяц. Язык короткий: одна фраза, и таблица отвечает.

Часто рядом Python и Excel. Можно пойти в аналитику, в разработку баз или просто научиться не бояться выгрузки. Начинаем с SELECT.

36 блоков · 380 уроков

Профессию к этому языку можно взять парой за 1199 ₽. Выбрать профессию

прогресс

0%

блок 1

Первые шаги

SELECT, текст, число, плюс.

  1. 1

    Что такое SQL

  2. 2

    Другое слово

  3. 3

    Число

  4. 4

    Сложение

  5. 5

    Подпись столбца

  6. 6

    Другое имя столбца

  7. 7

    Два слова двумя запросами

  8. 8

    Вычитание

  9. 9

    Умножение

  10. 10

    Слово касса

  11. 11

    Итог как число

  12. 12

    Короткая проверка базы

  13. Проверка блока

блок 2

Таблица и фильтр

FROM, WHERE, LIMIT.

  1. 1

    Откуда строки

  2. 2

    Все столбцы намёком

  3. 3

    Фильтр WHERE

  4. 4

    Другое значение фильтра

  5. 5

    Число в фильтре

  6. 6

    LIMIT

  7. 7

    Фильтр и одна строка

  8. 8

    Не равно в фильтре

  9. 9

    Выбрать два столбца

  10. 10

    Таблица items

  11. 11

    Товар ок

  12. 12

    Короткий отчёт из таблицы

  13. Проверка блока

блок 3

Счёт по таблице

COUNT, SUM, среднее намёком.

курс
  1. 1

    Сколько строк

  2. 2

    Счётчик с именем

  3. 3

    Сумма столбца

  4. 4

    Сумма с подписью

  5. 5

    Счётчик с ситом

  6. 6

    Сумма с ситом

  7. 7

    Сколько товаров

  8. 8

    Два числа руками

  9. 9

    Подпись отчёт и счёт

  10. 10

    COUNT это не SUM

  11. 11

    Итог кассы SUM

  12. 12

    Короткий отчёт счётчика

  13. Проверка блока

блок 4

Развилка в запросе

CASE, WHEN, ELSE.

курс
  1. 1

    CASE это if в SQL

  2. 2

    Когда иначе

  3. 3

    Сравнение столбца

  4. 4

    Точное равенство

  5. 5

    Норма или мало

  6. 6

    План и факт

  7. 7

    Вход по числу

  8. 8

    Слово прайс

  9. 9

    Только THEN без таблицы

  10. 10

    Ложный вопрос без таблицы

  11. 11

    Подпись к CASE

  12. 12

    Короткий сторож

  13. Проверка блока

блок 5

Порядок и группы

ORDER, GROUP, HAVING намёком.

курс
  1. 1

    ORDER BY

  2. 2

    По убыванию

  3. 3

    ORDER и LIMIT

  4. 4

    Самое большое

  5. 5

    GROUP BY

  6. 6

    Счётчик по группе

  7. 7

    Группа и порядок

  8. 8

    WHERE до группы

  9. 9

    Имя группе

  10. 10

    Две строки порядка

  11. 11

    Топ двух

  12. 12

    Короткий топ кассы

  13. Проверка блока

блок 6

Текст в таблице

LIKE, склейка, одинарные кавычки.

курс
  1. 1

    LIKE

  2. 2

    Точное слово vs LIKE

  3. 3

    Кусок в середине

  4. 4

    Склейка в SELECT

  5. 5

    Склейка при вет

  6. 6

    Текст столбцом

  7. 7

    Сообщение бота

  8. 8

    LIKE на таблицу items

  9. 9

    Пустое не равно пробелу

  10. 10

    Подпись и склейка не путать

  11. 11

    Журнал линии LIKE

  12. 12

    Короткий поиск

  13. Проверка блока

блок 7

Несколько условий

AND, OR, скобки.

курс
  1. 1

    И это, и то

  2. 2

    Два ключа

  3. 3

    Или

  4. 4

    Текст и число

  5. 5

    Скобки в WHERE

  6. 6

    Отказ AND

  7. 7

    NOT намёком

  8. 8

    AND и LIMIT

  9. 9

    Два AND

  10. 10

    OR с текстом

  11. 11

    Касса открыта и сумма

  12. 12

    Короткий коридор

  13. Проверка блока

блок 8

Отчёт

Подписи, итоги, шапка запроса.

курс
  1. 1

    Шапка словом

  2. 2

    Итог SUM с подписью

  3. 3

    Два итога

  4. 4

    Отчёт по ситу

  5. 5

    Имя столбцам отчёта

  6. 6

    Отчёт кассы группой

  7. 7

    Топ отчёта

  8. 8

    Слово стоп в отчёте

  9. 9

    Шапка касса и число

  10. 10

    Фильтр да в отчёте

  11. 11

    Смена словом и SUM

  12. 12

    Короткий закрытый отчёт

  13. Проверка блока

блок 9

Очередь и статусы

Заявки, сито, топ.

курс
  1. 1

    Список статусов

  2. 2

    Только ждут

  3. 3

    Сколько ждут

  4. 4

    Новые или ждут

  5. 5

    Одна заявка

  6. 6

    Разложить статусы

  7. 7

    Кучки статусов

  8. 8

    Лидер статуса

  9. 9

    Не готово

  10. 10

    Ключ 1 прайс

  11. 11

    Очередь и длина

  12. 12

    Короткий журнал

  13. Проверка блока

блок 10

Как на работе

Касса, смена, стоп, бот.

курс
  1. 1

    Открыть смену

  2. 2

    Итог кассы

  3. 3

    Норма или мало

  4. 4

    План и факт дыра

  5. 5

    Товары склада

  6. 6

    Первый товар

  7. 7

    Бот жив

  8. 8

    Прайс по ключу

  9. 9

    Очередь дня

  10. 10

    Касса и бот

  11. 11

    Закрыть день

  12. 12

    Рабочий запрос дня

  13. Проверка блока

блок 11

Две таблицы

JOIN намёком, orders и items.

курс
  1. 1

    Вторая таблица

  2. 2

    Чеки другой таблицы

  3. 3

    Склеить таблицы

  4. 4

    Поля двух таблиц

  5. 5

    Фильтр после JOIN

  6. 6

    Счёт после JOIN

  7. 7

    Клиенты

  8. 8

    Заказы клиента

  9. 9

    Только ждут из склейки

  10. 10

    Отчёт склейки

  11. Проверка блока

блок 12

Запись в таблицу

INSERT, UPDATE, новая строка.

курс
  1. 1

    Вставить строку

  2. 2

    Вставить имя

  3. 3

    Два поля

  4. 4

    Обновить

  5. 5

    Обновить с ситом

  6. 6

    Обновить статус

  7. 7

    Вставить заказ

  8. 8

    Приход склада

  9. 9

    Проверить вставку

  10. 10

    Журнал записи

  11. Проверка блока

блок 13

Отчёт по таблицам

GROUP, JOIN, COUNT вместе.

курс
  1. 1

    Группа статусов

  2. 2

    Группа после JOIN

  3. 3

    Сумма по клиенту

  4. 4

    Только крупные группы

  5. 5

    Сортировка кучек

  6. 6

    Топ 1

  7. 7

    Шапка отчёта

  8. 8

    Отчёт JOIN

  9. 9

    Фильтр потом группа

  10. 10

    Отчёт целиком

  11. Проверка блока

блок 14

Фильтр периода

WHERE n больше, BETWEEN намёком, дата словом.

курс
  1. 1

    Больше порога

  2. 2

    Не меньше плана

  3. 3

    Меньше порога

  4. 4

    Два порога

  5. 5

    День словом

  6. 6

    Два дня

  7. 7

    COUNT за период

  8. 8

    SUM за период

  9. 9

    Не этот день

  10. 10

    Отчёт периода

  11. Проверка блока

блок 15

Топ и порядок

ORDER, LIMIT, топ товаров.

курс
  1. 1

    По возрастанию

  2. 2

    По убыванию

  3. 3

    Топ 3

  4. 4

    Топ 1

  5. 5

    Топ имён

  6. 6

    Хвост

  7. 7

    Топ после сита

  8. 8

    Топ статуса

  9. 9

    Шапка топ

  10. 10

    Топ целиком

  11. Проверка блока

блок 16

Ветки в отчёте

CASE в SELECT, метки.

курс
  1. 1

    Две метки

  2. 2

    План

  3. 3

    Статус словом

  4. 4

    Ноль это брак

  5. 5

    CASE и имя

  6. 6

    COUNT меток намёком

  7. 7

    Ключ бота CASE

  8. 8

    Шапка ветки

  9. 9

    ELSE обязателен

  10. 10

    Отчёт веток

  11. Проверка блока

блок 17

Запрос в запросе

Подзапрос намёком.

курс
  1. 1

    Сначала среднее

  2. 2

    Подзапрос COUNT

  3. 3

    Имя из подзапроса

  4. 4

    Скобки обязательны

  5. 5

    Подзапрос и статус

  6. 6

    Шапка подзапроса

  7. 7

    Подзапрос JOIN не обязателен

  8. 8

    Порог из SUM

  9. 9

    LIMIT внутри

  10. 10

    Подзапрос целиком

  11. Проверка блока

блок 18

Склад и продажи

items и orders вместе.

курс
  1. 1

    Полка

  2. 2

    Остаток

  3. 3

    Продажи

  4. 4

    Товар и остаток

  5. 5

    Низкий остаток

  6. 6

    Склейка продажи

  7. 7

    Сумма склейки

  8. 8

    Нет на полке

  9. 9

    Шапка склада

  10. 10

    Склад целиком

  11. Проверка блока

блок 19

Клиенты и заказы

clients, orders, JOIN.

курс
  1. 1

    Клиенты

  2. 2

    Сколько клиентов

  3. 3

    Заказы людей

  4. 4

    Сумма клиента

  5. 5

    Один клиент

  6. 6

    Клиент без кавычек нельзя

  7. 7

    Топ клиента

  8. 8

    Шапка клиентов

  9. 9

    Пустой клиент намёком

  10. 10

    Клиенты целиком

  11. Проверка блока

блок 20

Сводка дня

Один запрос как закрытие смены.

курс
  1. 1

    Открыть сводку

  2. 2

    Оборот

  3. 3

    Чеков

  4. 4

    Крупных

  5. 5

    План CASE

  6. 6

    Дыра дня

  7. 7

    Касса и бот

  8. 8

    Стоп

  9. 9

    Смена и SUM

  10. 10

    Сводка целиком

  11. Проверка блока

блок 21

Журнал записи

INSERT и проверка SELECT.

курс
  1. 1

    Новый чек

  2. 2

    Новый товар

  3. 3

    Новый статус

  4. 4

    Потом прочитать

  5. 5

    Обновить остаток

  6. 6

    Закрыть заявку

  7. 7

    Два поля вставка

  8. 8

    Шапка записи

  9. 9

    Заказ в orders

  10. 10

    Журнал целиком

  11. Проверка блока

блок 22

Сложный отчёт

WHERE, GROUP, ORDER, шапка.

курс
  1. 1

    Сито

  2. 2

    Кучки после сита

  3. 3

    Сортировка кучек

  4. 4

    Три поля

  5. 5

    JOIN в отчёте

  6. 6

    HAVING в отчёте

  7. 7

    LIMIT отчёта

  8. 8

    Шапка сложного

  9. 9

    CASE в сложном

  10. 10

    Сводка целиком

  11. Проверка блока

блок 23

Финальный запрос

Собрать рабочий SQL дня.

курс
  1. 1

    Шапка дня

  2. 2

    Оборот дня

  3. 3

    Очередь дня

  4. 4

    Склад дня

  5. 5

    Топ дня

  6. 6

    План дня

  7. 7

    Запись дня

  8. 8

    Склейка дня

  9. 9

    Стоп дня

  10. 10

    Полный день

  11. Проверка блока

блок 24

Доставка

Рейс, вес, перевес, оплата.

курс
  1. 1

    Шапка рейса

  2. 2

    Веса

  3. 3

    Сумма веса

  4. 4

    Перевес

  5. 5

    Срок

  6. 6

    Оплата

  7. 7

    COUNT пачек

  8. 8

    Шапка и SUM

  9. 9

    Стоп рейса

  10. 10

    Лист доставки

  11. Проверка блока

блок 25

Карта гостя

Баллы, уровень, списать.

курс
  1. 1

    Шапка карты

  2. 2

    Баллы

  3. 3

    Начислить намёком

  4. 4

    Уровень

  5. 5

    Списать

  6. 6

    Две карты

  7. 7

    COUNT карт

  8. 8

    Шапка и n

  9. 9

    Стоп карты

  10. 10

    Смена лояльности

  11. Проверка блока

блок 26

Табель

Часы, опоздание, фонд.

курс
  1. 1

    Шапка табеля

  2. 2

    Часы

  3. 3

    Фонд

  4. 4

    Опоздания

  5. 5

    Переработка

  6. 6

    Норма

  7. 7

    COUNT дней

  8. 8

    Шапка и SUM

  9. 9

    Стоп табеля

  10. 10

    Закрытие табеля

  11. Проверка блока

блок 27

Возвраты

Чистыми, доля, эскалация.

курс
  1. 1

    Шапка возврата

  2. 2

    Суммы возвратов

  3. 3

    Сумма возвратов

  4. 4

    Эскалация

  5. 5

    Ок дня

  6. 6

    Причина

  7. 7

    Только брак

  8. 8

    INSERT возврата

  9. 9

    Стоп возврата

  10. 10

    Сводка возвратов

  11. Проверка блока

блок 28

Месяц точки

Дни, филиалы, сводка периода.

курс
  1. 1

    Шапка месяца

  2. 2

    Дни

  3. 3

    Оборот

  4. 4

    План месяца

  5. 5

    Топ дня

  6. 6

    Три службы

  7. 7

    COUNT дней

  8. 8

    GROUP дней намёком

  9. 9

    Стоп месяца

  10. 10

    Месяц точки

  11. Проверка блока

блок 29

Читать ТЗ

Написать запрос по описанию.

курс
  1. 1

    ТЗ: шапка

  2. 2

    ТЗ: все строки

  3. 3

    ТЗ: сумма

  4. 4

    ТЗ: фильтр

  5. 5

    ТЗ: края

  6. 6

    ТЗ: имя столбца

  7. 7

    ТЗ: норма

  8. 8

    ТЗ: порядок

  9. 9

    ТЗ: две таблицы

  10. 10

    Собрать по ТЗ

  11. Проверка блока

блок 30

Проверка входа

Пусто, ноль, порог.

курс
  1. 1

    Пусто намёком

  2. 2

    Нули

  3. 3

    COUNT нулей

  4. 4

    Живые

  5. 5

    Слишком большие

  6. 6

    Коридор

  7. 7

    Метка брака

  8. 8

    Шапка входа

  9. 9

    Стоп проверки

  10. 10

    Проверка целиком

  11. Проверка блока

блок 31

Пачка запросом

Все, фильтр, сумма пачки.

курс
  1. 1

    Все заявки

  2. 2

    COUNT пачки

  3. 3

    Крупные

  4. 4

    Сумма пачки

  5. 5

    SUM живых

  6. 6

    Имена пачки

  7. 7

    Пачка JOIN

  8. 8

    Шапка пачки

  9. 9

    Стоп пачки

  10. 10

    Пачка целиком

  11. Проверка блока

блок 32

Несколько метрик

Три поля в одном SELECT.

курс
  1. 1

    Две метрики

  2. 2

    Три поля

  3. 3

    ping

  4. 4

    price

  5. 5

    status CASE

  6. 6

    dump COUNT

  7. 7

    JOIN метрика

  8. 8

    Шапка сервиса

  9. 9

    Стоп сервиса

  10. 10

    Файл метрик

  11. Проверка блока

блок 33

Документ запросом

Шапка, строки, итог.

курс
  1. 1

    Шапка отчёта

  2. 2

    Строки

  3. 3

    Итог

  4. 4

    Подпись итога

  5. 5

    Решение

  6. 6

    name и n

  7. 7

    GROUP в отчёте

  8. 8

    ORDER отчёта

  9. 9

    Стоп отчёта

  10. 10

    Отчёт целиком

  11. Проверка блока

блок 34

Две таблицы служб

Касса и склад в одном запросе.

курс
  1. 1

    Касса

  2. 2

    Склад

  3. 3

    Остаток

  4. 4

    Низкий остаток

  5. 5

    Продажи

  6. 6

    Склейка служб

  7. 7

    Шапка служб

  8. 8

    Касса ок

  9. 9

    Стоп служб

  10. 10

    Две службы целиком

  11. Проверка блока

блок 35

План запросом

План, факт, разница, решение.

курс
  1. 1

    План числом

  2. 2

    Факт SUM

  3. 3

    Решение

  4. 4

    Ок плана

  5. 5

    Разница

  6. 6

    Четыре поля

  7. 7

    Шапка плана

  8. 8

    Процент

  9. 9

    Стоп плана

  10. 10

    Сводка целиком

  11. Проверка блока

блок 36

Написать запрос

Собрать рабочий SQL дня самим.

курс
  1. 1

    Открыть день

  2. 2

    Касса дня

  3. 3

    Очередь дня

  4. 4

    Склад дня

  5. 5

    Бот дня

  6. 6

    План дня

  7. 7

    Запись дня

  8. 8

    Склейка дня

  9. 9

    Стоп дня

  10. 10

    Рабочий запрос дня

  11. Проверка блока