Назад в блогIT-найм

Тест SQL для аналитиков данных: что проверять на каждом уровне (с примерами)

Ismayil IsmayilovIsmayil Ismayilov7 мин чтения
Тест SQL для аналитиков данных: что проверять на каждом уровне (с примерами)

SQL указан почти в каждом резюме аналитика данных. Гораздо меньше кандидатов могут с первого раза написать правильный запрос с JOIN, GROUP BY и фильтром. Те, кто не может, обычно проходят интервью, рассказывая, что они сделали бы. Короткий тест SQL за 15–30 минут показывает, что они умеют на самом деле.

Что проверять на каждом уровне

УровеньДолжен уметьПример задания
JuniorSELECT, WHERE, ORDER BY, базовые агрегаты (COUNT, SUM, AVG), GROUP BY, простой INNER JOIN«Общая выручка по городам за заказы 2025 года»
MiddleLEFT/INNER JOIN по 3+ таблицам, HAVING, CASE WHEN, подзапросы или CTE, функции дат, работа с NULL«Клиенты, которые покупали в 1-м квартале, но не во 2-м»
SeniorОконные функции (ROW_NUMBER, LAG, накопительные итоги), оптимизация запросов, моделирование данных, проверки качества данных«Помесячное удержание по когортам регистрации»

Выбирайте уровень, который действительно нужен для роли. Младшему аналитику отчётности оконные функции в первый день не нужны.

Форматы вопросов

Выбор ответа по реальным запросам. Показываете запрос и небольшую таблицу и спрашиваете, что он вернёт или какой запрос правильно отвечает на бизнес-вопрос. Быстро, объективно и отлично подходит для первого этапа.

Найдите ошибку. Запрос возвращает неверное число, например LEFT JOIN незаметно превращается в INNER JOIN из-за условия в WHERE. Кандидат должен найти проблему. Это проверяет понимание, а не только синтаксис.

Напишите запрос. Кандидат пишет SQL по предоставленной схеме. Ближе всего к реальной работе, лучше всего для шорт-листа.

Интерпретация. «Запрос показывает падение активных пользователей в марте на 40%. Что вы проверите перед тем, как сообщить об этом?» Это проверяет аналитическое суждение: проблема в данных, изменилось определение метрики или падение настоящее?

Ошибки, которые говорят больше всего

  • забыть, что COUNT(column) игнорирует NULL;
  • JOIN, который размножает строки и завышает суммы;
  • фильтровать LEFT JOIN в WHERE вместо ON;
  • путать WHERE и HAVING;
  • ошибки в границах дат (<= или < при работе с timestamp).

Кандидат, который правильно справляется с этим, будет выдавать цифры, которым можно доверять.

Сочетайте SQL с грамотностью в данных и логикой

Писать запросы — только половина работы. Аналитик должен критически читать данные и объяснять их. Сильное оценивание для аналитика данных включает:

  1. Основы SQL (15 мин)
  2. Грамотность в работе с данными: чтение графиков, поиск вводящих в заблуждение метрик (10 мин)
  3. Критическое мышление: правильные выводы (10 мин)
  4. Одно короткое эссе или видеовопрос: «Объясните результаты руководителю без технического бэкграунда».

В библиотеке TheyTest есть тесты начального уровня «Основы SQL» и «Грамотность в работе с данными» на нескольких языках, а также «Критическое мышление».

Советы по оценке

  • Сначала правильность: запрос, который выполняется, но возвращает неверное число, хуже запроса с синтаксической ошибкой, потому что он выглядит правильным.
  • На middle и senior важна читаемость: понятные алиасы, CTE, форматирование.
  • Порог — под конкретную роль. Порог для senior-аналитика отсеет хороших junior.

Защита от списывания

Вопросы по SQL легко вставить в ИИ-ассистент, поэтому используйте:

  • случайный выбор вопросов и перемешанные варианты ответов;
  • лимит времени на тест;
  • полноэкранный режим с контролем вкладок и копирования;
  • запись сессии, чтобы проверять подозрительно идеальные результаты.

Соберите своё оценивание по SQL

Возьмите за основу библиотечный тест «Основы SQL», добавьте 3–5 своих вопросов по вашей схеме данных и задайте лимит времени. Отбор кандидатов можно начать в тот же день.

Начать бесплатный пробный период

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

Сколько должен длиться тест SQL?

15–20 минут для отборочного теста junior и до 45 минут для практического задания для middle и senior из шорт-листа.

Какой диалект SQL проверять?

Для отбора — стандартный SQL. Отличия диалектов (PostgreSQL, MySQL, SQL Server, Oracle) легко освоить, логические ошибки — нет.

Нужен ли аналитику ещё и тест по Excel?

Для ролей с большим объёмом отчётности — да. Многие аналитики каждый день переносят данные между SQL и таблицами.

Ismayil Ismayilov

Об авторе

Ismayil Ismayilov

Co-Founder & CTO, TheyTest

LinkedIn