Все материалы
Продуктовая аналитикаматериалстарт

SQL-тренажёры и онлайн-песочницы: где практиковаться

Сравнение SQL-тренажёров и онлайн-песочниц: sql-ex, SQL Academy, Stepik, LeetCode, HackerRank, db-fiddle, sqliteonline и DuckDB в браузере. Цена, СУБД, проверка ответа.

КПКейсПрактика23 сентября 2026 г.15 мин

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

Коротко

Хороший тренажёр отвечает на вопрос «правильно ли я решил». Хорошая песочница — «что на самом деле лежит в данных». Курс — «что учить дальше». Большинство людей, которые учат SQL, используют два инструмента из трёх одновременно.

  • Бесплатно и много задач с проверкой: sql-ex.ru, тренажёр SQL Academy, «Интерактивный тренажер по SQL» на Stepik.
  • Перед собеседованием на английском: план SQL 50 на LeetCode и раздел SQL на HackerRank.
  • Выполнить свой запрос без установки: db-fiddle, sqliteonline, DuckDB в браузере, песочница SQL Academy.
  • Практика на продуктовых данных: песочница SQL-курса КейсПрактики — пять связанных таблиц и 45 185 строк, без регистрации.
  • Главный критерий выбора — как проверяется ответ: по результату, по тексту или никак.

Тренажёр, песочница и курс: в чём разница

Тренажёр — это набор задач с автоматической проверкой. У каждой задачи есть эталонное решение, и сервис сравнивает ваш результат с ним. Сильная сторона — объём и быстрая обратная связь: за вечер можно решить двадцать задач и увидеть, где ошибка. Слабая — задачи обычно на учебных схемах, придуманных под упражнение, и они плохо похожи на данные продукта.

Песочница, или онлайн-компилятор, выполняет любой запрос и показывает результат. Заданий и ответов в ней нет. Она нужна, чтобы проверить свою догадку, воспроизвести пример из статьи или разобраться, как ведёт себя функция в конкретной СУБД. Новичку без задач в песочнице нечего делать, а опытному она нужнее тренажёра.

Курс задаёт последовательность и объяснения. Лучшие курсы соединяют это с тренажёром: теория, затем задача с проверкой на тех же данных. Разница между курсами — в том, на каких данных идут задачи и как проверяется ответ.

Что даёт каждый инструмент
ИнструментДаётНе даётКому нужнее
Тренажёрзадачи, проверку, объём практикипродуктовые данные, объяснение «зачем»тем, кто уже знает основы
Песочницалюбой запрос, выбор СУБДзадачи, ответы, последовательностьтем, кто проверяет гипотезу или пример
Курспорядок тем, объяснения, проверкусвободы: темп и данные заданытем, кто начинает с нуля

По каким критериям сравнивать SQL-тренажёры

Число задач на главной странице — самый заметный и самый бесполезный критерий. Двести задач на одной схеме «сотрудники и отделы» тренируют меньше, чем тридцать на связанной базе, где нужно думать, почему после JOIN выросла выручка. Важнее пять других вещей.

  • Данные. Какие таблицы и сколько строк. На десяти строках не видно ни дублей, ни неполного последнего дня, ни незрелых когорт.
  • Проверка ответа. Сравнивается результат запроса с эталоном или текст. Проверяется ли решение на других данных, чтобы случайно совпавший неверный запрос не прошёл.
  • Диалект. MySQL, PostgreSQL, SQL Server, SQLite или DuckDB. Для основ разница мала, для дат и строк — заметна.
  • Объяснения. Есть ли разбор решения, подсказка и пояснение, почему неверный ответ неверен.
  • Цена и регистрация. Что открыто бесплатно, что за подпиской, нужен ли аккаунт для первой задачи.

Сравнительная таблица SQL-тренажёров и песочниц

В таблице только факты, которые удалось подтвердить на официальных страницах сервисов 24 сентября 2026 года. Там, где стоит «нет» или «не указана», сервис этого не заявляет или проверить не удалось. Числа задач и цены меняются, поэтому перед выбором стоит открыть страницу сервиса.

SQL-тренажёры и песочницы: факты на 24.09.2026
СервисЧто этоСУБДПроверкаЦена и доступЯзык
sql-ex.ruтренажёр: 190 задач обучающего этапа, 242 рейтинговых на SELECT и 68 на изменение данныхSQL Server 2019; на обучающем этапе также MariaDB 10.4, PostgreSQL 12.3, Oracle 11gсравнение с результатом эталонного запросабесплатно; первый этап без регистрации, остальное после бесплатной регистрации; сертификат платный по желаниюрусский, английский
SQL Academyтренажёр (более 200 задач), курс, песочницатренажёр — MySQL; справочник — MySQL и PostgreSQLпроверка решения в тренажёретренажёр бесплатный, часть задач и эталонные решения — в премиуме: 3 690 ₽ за 6 месяцеврусский
Stepik: «Интерактивный тренажер по SQL»курс-тренажёр: 22 урока, большинство шагов — задания на запросMySQL 8.0.21автоматическая проверка на платформебесплатно, сертификат Stepikрусский
LeetCodeплан SQL 50 и раздел Database: 323 задачиMySQL, SQL Server, PostgreSQL, Oracle (и Pandas)проверка на скрытых тестахSQL 50 бесплатен целиком; 218 из 323 задач раздела — только с Premiumанглийский
HackerRankраздел SQL: 58 задач от Basic Select до Advanced Joinсреда поддерживает MySQL 8.0, Oracle 11g, SQL Server 2022, PostgreSQL 14.3, DB2 10.5проверка на тестахцена практики на странице раздела не указанаанглийский
db-fiddle.comпесочница: своя схема и данные, ссылка на результатMySQL 5.5–9, PostgreSQL 9.4–19 (beta), SQLite 3.30–3.46, MariaDB 10–12нетредактор открывается без входаанглийский
sqliteonline.comонлайн-редактор, выбор движкаSQLite, DuckDB, MariaDB, PostgreSQL, MS SQL Server; Oracle в тестовом режименетредактор открывается на главной странице; тарифы — в разделе Pricingанглийский
shell.duckdb.orgDuckDB целиком в браузереDuckDBнетбесплатно, без установкианглийский
Песочница SQL-курса КейсПрактикипесочница на продуктовой базе: 5 таблиц, 45 185 строкDuckDBнет; проверка — в главах курсабесплатно, без регистрациирусский

sql-ex, SQL Academy и Stepik: тренажёры на русском

sql-ex.ru — самый старый и самый объёмный из русскоязычных тренажёров. Задачи разбиты на обучающий этап и рейтинговые этапы, есть задачи на INSERT, UPDATE, DELETE и MERGE. Проверка устроена правильно: сайт сравнивает ваш результат с результатом эталонного запроса и показывает обе выборки. Он же предупреждает, что неверный запрос может случайно вернуть «правильные» данные на текущем состоянии базы, и такое решение всё равно будет признано ошибочным. Есть режим «без проверки», в котором на учебных базах можно выполнять произвольные запросы. Слабость для аналитика — учебные схемы и диалект: рейтинговые этапы идут на SQL Server, а его синтаксис дат и ограничения строк (TOP вместо LIMIT) отличается от PostgreSQL.

SQL Academy — тренажёр, интерактивный курс, справочник функций и песочница, в которой можно выбрать одну из учебных баз и выполнить произвольный запрос. По описанию самого сервиса тренажёр рассчитан на MySQL, а справочник показывает функции для MySQL и PostgreSQL. Тренажёр бесплатный, но часть задач помечена как доступная только с премиум-аккаунтом, и эталонное решение тоже открывается только премиум-пользователям. Премиум стоит 3 690 ₽ за шесть месяцев без автопродления.

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

LeetCode и HackerRank: задачи перед собеседованием

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

На LeetCode есть бесплатный учебный план SQL 50: пятьдесят задач от простого SELECT до подзапросов и строковых функций, по словам самой платформы — на месяц подготовки. Всего в разделе Database 323 задачи, из них 218 доступны только с подпиской Premium. Решение можно писать на MySQL, SQL Server, PostgreSQL или Oracle, а также на Pandas.

На HackerRank в разделе SQL 58 задач, разбитых на подразделы Basic Select, Advanced Select, Aggregation, Basic Join, Advanced Join и Alternative Queries. Документация о среде выполнения перечисляет MySQL, Oracle, SQL Server, PostgreSQL и DB2 с версиями. Какие из них доступны в конкретной задаче, видно в её редакторе.

Обе платформы хороши для тренировки скорости и чтения условия на английском. Продуктовых задач — retention, воронки, разбора A/B-теста — в них почти нет, а на собеседовании аналитика их задают чаще, чем «найти второй по величине оклад».

Почему способ проверки ответа важнее числа задач

Тренажёр, который проверяет только результат на одних данных, пропускает запросы, которые верны случайно. Пример из учебной базы SQL-курса. DAU — число разных людей, открывших продукт за день. Правильный запрос считает count(DISTINCT user_id), неправильный — count(*) по событиям app_open. На данных песочницы оба запроса дают одинаковый результат во все 91 день: каждый человек открывает продукт не чаще раза в день.

Значит, на этих данных неверный запрос не отличить от верного. В шестой главе курса к той же базе добавлена повторная доставка событий за 25 августа: 511 открытий пришли дважды. На этих данных count(*) за 25 августа даёт 1 022, а DAU остаётся 511. Проверка ловит ошибку, потому что данные задачи подобраны так, чтобы неверный запрос дал неверный результат. sql-ex прямо предупреждает о том же: запрос, который случайно вернул «правильные» строки на текущих данных, всё равно может быть признан ошибочным.

Отсюда практический вывод. Если вы учитесь в песочнице без проверки, придумывайте себе такие «ловушки» сами: добавьте условие, при котором ваш запрос должен дать другой результат, и посмотрите, изменится ли он. Если тренажёр принимает ваше решение, это ещё не значит, что оно верное в общем случае.

Два запроса DAU: одинаковы на данных песочницы, различаются на данных задачи
SELECT CAST(event_time AS DATE) AS day,
       count(*)                AS opens,
       count(DISTINCT user_id) AS dau
FROM events
WHERE event_name = 'app_open'
  AND CAST(event_time AS DATE) BETWEEN DATE '2026-08-24' AND DATE '2026-08-26'
GROUP BY 1
ORDER BY 1;

-- песочница:        08-24 478 | 478   08-25  511 | 511   08-26 549 | 549
-- задание 6-й главы: 08-24 478 | 478   08-25 1022 | 511   08-26 549 | 549

Где запустить SQL онлайн без установки

Онлайн-компилятор нужен, когда хочется проверить конкретное поведение: как функция обрабатывает NULL, что вернёт деление целых чисел, работает ли синтаксис в нужной версии. Для этого не нужно ставить базу на компьютер.

db-fiddle.com хорош, когда важна конкретная СУБД и версия: можно выбрать MySQL, PostgreSQL, SQLite или MariaDB в нескольких версиях, описать схему, вставить данные и поделиться ссылкой на результат. Это удобный способ показать проблему коллеге или задать вопрос на форуме. Данные нужно создать самому через CREATE TABLE и INSERT.

sqliteonline.com открывает редактор прямо на главной странице и позволяет переключаться между SQLite, DuckDB, MariaDB, PostgreSQL и MS SQL Server. SQLite там работает в браузере через WebAssembly. В условиях сервиса прямо сказано, что он не предназначен для обработки персональных данных, — это стоит помнить, прежде чем загружать выгрузку с работы.

DuckDB-Wasm — полная версия DuckDB, скомпилированная в WebAssembly. Её веб-оболочка на shell.duckdb.org выполняет запросы прямо в браузере, без сервера, и данные не покидают компьютер. Это лучший вариант, если нужно быстро посчитать что-то по своему CSV или Parquet.

Песочница SQL-курса устроена иначе: в браузере только редактор, запрос выполняет сервер на DuckDB. Зато в ней уже лежит связная база продукта — пользователи, события, платежи, подписки и A/B-эксперимент, — и схема видна рядом с редактором. Разрешён один запрос SELECT или WITH, результат ограничен 200 строками. Загрузить свои данные туда нельзя: это место, чтобы проверить пример из статьи или свою догадку на готовых данных.

Какой тренажёр выбрать новичку, а какой — перед собеседованием

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

Новичку с нуля нужна последовательность и много лёгких задач с объяснениями. Здесь подходят курс-тренажёр на Stepik, тренажёр SQL Academy или бесплатные главы SQL-курса. Главное — не начинать с онлайн-компилятора: без задачи в пустом редакторе нечего делать.

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

Перед собеседованием полезны два режима. Скорость и чтение условия — на LeetCode, HackerRank или рейтинговых этапах sql-ex. Продуктовые задачи и объяснение решения вслух — на задачах с разбором и в песочнице, где можно задать себе вопрос интервьюера и проверить ответ.

Что выбрать под цель
ЦельЧто подойдётЧего избегать
первый запрос с нуляStepik, тренажёр SQL Academy, главы 0–2 SQL-курсапустой онлайн-компилятор
набить руку на синтаксисеsql-ex, SQL Academyсотня задач на одной схеме без разборов
продуктовые метрики: DAU, воронка, retentionSQL-курс на учебной базе, задачи с решениямисхемы из десяти строк
собеседование на английскомLeetCode SQL 50, HackerRankтолько русскоязычные тренажёры
проверить поведение функции в своей СУБДdb-fiddle, sqliteonlineпредположения без запуска
посчитать что-то по своему файлуDuckDB в браузерезагрузку рабочих данных в чужой сервис

Как тренироваться, чтобы навык переносился на работу

Задачи тренажёров и рабочие задачи аналитика отличаются одним: на работе никто не говорит, какие таблицы нужны и сколько строк должно получиться. Поэтому тренироваться полезно не только решать, но и ставить вопрос самому.

Хорошее упражнение — взять одну базу и задать ей десять вопросов, которые мог бы задать менеджер. Сколько людей приходит из каждого канала? Какая доля из них доходит до первого отчёта? Кто платит и сколько? Возвращаются ли на следующий день? На учебной базе SQL-курса ответ на каждый такой вопрос можно проверить: например, активация organic — 66,7%, выручка на платящего в paid_search — $28,69.

Второе упражнение — ломать свои запросы. Уберите DISTINCT, поменяйте LEFT JOIN на JOIN, сдвиньте границу периода на день — и посмотрите, изменится ли результат. Если не изменился, данные не проверяют эту часть запроса, и в реальной базе ошибка может пройти незамеченной.

  • Перед запуском предскажите порядок результата: сотни строк или тысячи, доля около 20% или около 60%.
  • После каждого JOIN сравнивайте число строк с числом уникальных ключей.
  • Проверяйте последний период: не обрезан ли он выгрузкой.
  • Объясняйте решение вслух одной фразой: «одна строка результата — это…».

Частые вопросы про SQL-тренажёры

Есть ли бесплатный SQL-тренажёр на русском? Да. sql-ex.ru бесплатен целиком, сертификат покупается по желанию. «Интерактивный тренажер по SQL» на Stepik бесплатен. У SQL Academy бесплатна основная часть тренажёра, премиум открывает часть задач и эталонные решения.

Где можно выполнить SQL онлайн без регистрации? В db-fiddle и sqliteonline редактор открывается сразу, на shell.duckdb.org запрос выполняется прямо в браузере. Песочница SQL-курса тоже работает без входа, и в ней уже есть продуктовая база с данными.

Какую СУБД выбрать для тренировки? Для основ почти любую. Если вакансии, которые вам интересны, упоминают PostgreSQL или ClickHouse, тренируйтесь на PostgreSQL-подобном диалекте: DuckDB и PostgreSQL здесь очень близки. Тренажёры на MySQL и SQL Server тоже учат основам, но функции дат у них пишутся иначе, а в SQL Server и ограничение строк: TOP вместо LIMIT.

Можно ли выучить SQL только на тренажёре? Синтаксис — да. Работу аналитика — вряд ли: тренажёр не учит ставить вопрос и сомневаться в числе, которое прошло проверку. Для этого нужны данные с подвохом и задачи, где путь от вопроса до запроса не подсказан.

Итог

Выбирайте инструмент по задаче, а не по числу упражнений. Для старта нужен курс или курс-тренажёр с объяснениями, для объёма — тренажёр с проверкой по результату, для собеседования на английском — LeetCode и HackerRank, для своих вопросов — песочница. Если цель — работа продуктового или data-аналитика, добавьте к этому практику на связной базе продукта, где ответ проверяется выполнением и где ошибка в JOIN или периоде действительно меняет число.

Песочница SQL-курса и главы 0–2 открыты без регистрации. В 18 главах курса 54 задания, и каждый запрос проверяется на той же учебной базе, что используется в этой статье.

Продолжить чтение
Вся библиотека