SQL тренажёр онлайн с задачами и автоматической проверкой
Практика SQL на 1 192 задачах. Пишите запросы прямо в браузере, работайте с настоящими таблицами и сразу проверяйте результат на скрытых данных.
Бесплатный тариф навсегда: 292 задачи без карты.
- PGPostgreSQL
- MyMySQL
- ClickHouse
- BigQuery
Ride-hailing-сервис готовит рейтинг самых загруженных водителей. Для каждого водителя посчитайте общее число его поездок в истории сервиса — независимо от статуса поездки, отменённые тоже считаются. Найдите 5 лидеров. Выведите name и ride_count. Отсортируйте результат по количеству поездок по убыванию.
SELECT d.name, COUNT(r.id) AS ride_count FROM drivers d JOIN rides r ON r.driver_id = d.id GROUP BY d.name ORDER BY ride_count DESC LIMIT 5;
| # | name | ride_count |
|---|---|---|
| 1 | Sergey | 3 |
| 2 | Maria | 2 |
| 3 | Andrew | 2 |
| 4 | Olga | 1 |
Ride-hailing-сервис готовит рейтинг самых загруженных водителей. Для каждого водителя посчитайте общее число его поездок в истории сервиса — независимо от статуса поездки, отменённые тоже считаются. Найдите 5 лидеров. Выведите name и ride_count. Отсортируйте результат по количеству поездок по убыванию.
SELECT d.name, COUNT(r.id) AS ride_count FROM drivers d JOIN rides r ON r.driver_id = d.id GROUP BY d.name ORDER BY ride_count DESC LIMIT 5;
- задачи по SQL с автоматической проверкой
- 1 192
- задачи по SQL с автоматической проверкой
- треков под профессию и цель
- 12
- треков под профессию и цель
- диалекта SQL в отдельных песочницах
- 4
- диалекта SQL в отдельных песочницах
- задачи доступны бесплатно, без карты
- 292
- задачи доступны бесплатно, без карты
Примеры задач по SQL онлайн
Задачи отличаются по сложности и набору приёмов: от обычной агрегации до оконных функций и запросов с несколькими связями.
Все задачи- EasyбесплатноСбербанкСуммарный баланс по клиентамПосчитать итоговый баланс с помощью SUM и GROUP BY. Доступно бесплатно.SUMGROUP BY
- MediumOzonСотрудники с зарплатой выше руководителяСопоставить сотрудников и руководителей через SELF JOIN или подзапрос.SELF JOINsubquery
- HardWildberriesТоп-3 ночных пользователя в каждом городеИспользовать ROW_NUMBER и PARTITION BY для рейтинга внутри групп.ROW_NUMBERPARTITION BY
Что есть в SQL Arena кроме обычных задач
- Задачи с собеседованийВ тренажёре есть задачи, которые встречались на собеседованиях в Яндексе, Ozon, Т-Банке, VK, Сбербанке, Wildberries, Avito и других компаниях.
- Режим «Собеседование»Сессия идёт с серверным таймером и без подсказок. После завершения формируется отчёт с результатами. На бесплатном тарифе доступна одна попытка в день.
- AI-менторМожно получить подсказку по задаче или объяснение ошибки в запросе. Бесплатно доступны 10 AI-подсказок всего, в Premium лимита нет.
- AI-задачи под уровеньPremium позволяет генерировать до 10 задач в день. Новая задача создаётся по теме, где в ваших решениях больше всего ошибок.
- EXPLAIN и ER-диаграммыСхему данных можно изучить визуально, а план выполнения запроса — разобрать через EXPLAIN.
- Рейтинг, стрик и ачивкиПрогресс не ограничивается счётчиком решённых задач: в SQL Arena есть рейтинг, серии занятий и достижения.
Как устроена практика SQL в тренажёре
Здесь не нужно устанавливать базу данных или настраивать окружение. Выбираете задачу, пишете запрос и сразу видите, решена она или нет.
- 01
Откройте задачу
У каждой задачи свой набор таблиц и данных. Можно посмотреть схему через ER-диаграмму и разобраться, какие связи понадобятся в запросе.
- 02
Напишите SQL-запрос
Работайте в браузере в песочнице PostgreSQL, MySQL, ClickHouse или BigQuery. Для разных диалектов используются отдельные среды.
- 03
Проверьте решение
Ответ проходит автоматическую проверку на скрытых данных. Тренажёр сверяет результат с эталоном на других данных, поэтому подогнать запрос под пример не получится.
- 04
Разберите ошибку
Если запрос не проходит проверку, можно использовать AI-ментора для подсказки и объяснения ошибки, а для производительности посмотреть план через EXPLAIN.
Тренажёр SQL по темам
Отдельные страницы под конкретную задачу: диалект, тема запроса, профессия или подготовка к собеседованию.
- JOIN SQL: виды соединений, примеры и практика
- GROUP BY SQL: группировка, агрегаты и HAVING
- Оконные функции SQL: примеры с ROW_NUMBER
- Подзапросы SQL: EXISTS, IN и коррелированные запросы
- CTE SQL: WITH и рекурсивные запросы
- Индексы SQL: EXPLAIN ANALYZE и оптимизация запросов
- CASE SQL: как работает CASE WHEN
- NULL SQL: COALESCE, IS NULL и работа с пустыми значениями
- Дата в SQL: функции и работа с датами
- LIKE SQL: поиск по строке и строковые функции
- UNION ALL в SQL: объединение результатов запросов
- LAG SQL: значение из предыдущей строки
- SELF JOIN SQL: соединение таблицы с самой собой
- EXISTS SQL и NOT EXISTS: как проверять наличие строк
- WITH RECURSIVE: рекурсивный CTE в SQL
- UPDATE SQL: INSERT, UPDATE и DELETE данных
- ALTER TABLE: как изменить таблицу в SQL
- Транзакции SQL: BEGIN, COMMIT, ROLLBACK и изоляция
- JSON SQL: работа с JSON и JSONB в PostgreSQL
- Регулярные выражения SQL: REGEXP и поиск по шаблону
- ORDER BY SQL: DISTINCT и LIMIT
12 треков для системной практики SQL
Все трекиЕсли не хочется выбирать задачи вручную, можно идти по готовому треку. Есть SQL с нуля → Аналитик на 63 задачи, SQL для Backend-разработчика на 60, для тестировщика на 59 и для дата-инженера на 56. Отдельные треки посвящены собеседованиям, оконным функциям, CTE, оптимизации, рабочим SQL-сценариям, MySQL, ClickHouse и BigQuery.
- SQL с нуля → Аналитик
- SQL для Backend-разработчика
- SQL для тестировщика
- SQL для дата-инженера
- Подготовка к собеседованию
- Оконные функции от и до
- CTE: запрос из нескольких шагов
- Оптимизация и планы запросов
- SQL в реальной работе
- SQL на MySQL для разработчика
- ClickHouse: аналитика на колоночной базе
- BigQuery для аналитика
10 курсов с теорией и практикой
Все курсыВ каждом уроке теория связана с задачей, которую можно выполнить сразу в браузере. Есть курс «SQL с нуля» на 12 глав и 77 уроков, из них 16 бесплатных, а также «Аналитика данных» с Python и pandas, BigQuery, SQL Performance, ClickHouse, регулярные выражения, JSON и вложенные данные, NoSQL на практике, Data Engineering и Kafka. Первые главы курсов доступны бесплатно.
- SQL с нуля12 глав · 77 уроков · 16 бесплатно
- Аналитика данных13 глав · 83 уроков · 11 бесплатно
- SQL Performance10 глав · 49 уроков · 6 бесплатно
- ClickHouse8 глав · 41 уроков · 5 бесплатно
- BigQuery8 глав · 27 уроков · 4 бесплатно
- Регулярные выражения6 глав · 18 уроков · 3 бесплатно
- JSON и вложенные данные6 глав · 18 уроков · 3 бесплатно
- NoSQL на практике9 глав · 41 уроков · 4 бесплатно
- Data Engineering10 глав · 58 уроков · 6 бесплатно
- Kafka10 глав · 59 уроков · 7 бесплатно
Практика PostgreSQL, MySQL, ClickHouse и BigQuery
SQL отличается от базы к базе, поэтому в SQL Arena четыре отдельные песочницы: PostgreSQL, MySQL, ClickHouse и BigQuery. Ничего устанавливать не нужно — запросы выполняются прямо в браузере. Можно решать задачи SQL именно в том диалекте, который используется на работе или нужен для собеседования.
Задачи SQL с собеседований
Отдельная часть тренажёра посвящена подготовке к техническим интервью. Например, в Easy-задаче Яндекса «Пять водителей с наибольшим числом поездок» нужно для каждого водителя посчитать все поездки, включая отменённые, и вывести топ-5 по их количеству. Решение строится через JOIN, GROUP BY, ORDER BY и LIMIT. Для тренировки в условиях, близких к интервью, есть отдельный режим «Собеседование» с таймером и без подсказок.
SQL для начинающих: от первых SELECT до рабочих запросов
Начать можно без опыта. Для этого есть курс «SQL с нуля» и отдельный трек задач, где практика идёт последовательно. Затем можно перейти к JOIN, агрегациям, подзапросам, CTE, оконным функциям, оптимизации и задачам с собеседований. Если нужно быстро вспомнить синтаксис, рядом есть справочник по SQL-командам и функциям, а отдельные темы разбираются в блоге.
SQL тренажёр бесплатно и Premium
Базовую практику можно начать без оплаты и без банковской карты.
Бесплатный тариф
- 292 бесплатные задачи на PostgreSQL, MySQL, ClickHouse и BigQuery
- Автоматическая проверка решений
- 10 AI-подсказок всего
- EXPLAIN
- Режим «Собеседование» один раз в день
- Рейтинг, стрик и ачивки
Premium
- Medium, Hard и Expert-задачи, включая задачи с собеседований
- AI-ментор без лимита
- AI-генерация до 10 задач в день под текущий уровень
- Дуэли один на один
- Сертификационный экзамен под таймером
- Топ решений сообщества
Частые вопросы о практике SQL онлайн
Где решать задачи по SQL онлайн?
В SQL Arena можно решать задачи прямо в браузере без установки базы данных. Доступны PostgreSQL, MySQL, ClickHouse и BigQuery, а решения проверяются автоматически на скрытых данных.
Есть ли бесплатный SQL тренажёр для начинающих?
Да. В бесплатном тарифе SQL Arena доступны 292 задачи на всех четырёх диалектах, мгновенная проверка, EXPLAIN и другие базовые функции. Банковская карта не требуется.
Как практиковать SQL с нуля?
Можно начать с курса «SQL с нуля» и трека «SQL с нуля → Аналитик». Курс содержит 12 глав и 77 уроков, 16 из них открыты бесплатно.
Есть ли задачи SQL с собеседований?
Да. В SQL Arena есть задачи, встречавшиеся на собеседованиях в Яндексе, Ozon, Т-Банке и других компаниях. Для отдельной тренировки есть режим «Собеседование» с серверным таймером и без подсказок.
Как проверяются решения SQL-задач?
Запрос проверяется не только на данных, которые видны в условии. SQL Arena запускает проверку на скрытых данных и сравнивает результат с эталоном, поэтому решение должно быть корректным в общем случае.
Можно ли практиковать ClickHouse и BigQuery онлайн?
Да. Для ClickHouse и BigQuery есть отдельные песочницы, как и для PostgreSQL и MySQL. Все запросы выполняются в браузере.
Есть ли подсказки, если SQL-запрос не получается?
Да. AI-ментор может дать подсказку или объяснить ошибку. На бесплатном тарифе доступны 10 AI-подсказок всего, в Premium они не ограничены.
Что лучше для практики SQL: курс или тренажёр?
Курс удобен, когда нужно последовательно изучить тему с теорией, а тренажёр — когда нужна регулярная практика на задачах. В SQL Arena доступны оба формата, поэтому после урока можно сразу закреплять тему запросами.
Решайте SQL-задачи прямо в браузере
Выберите диалект, откройте задачу и напишите запрос. SQL Arena проверит результат на скрытых данных и покажет, прошло ли решение.
Открыть SQL Arena