SQL на собеседовании
Классика SQL-собеседований на данных HR-системы «Пульс»: вторая по величине зарплата, лучший в отделе, топ-N с ничьями, сравнение с руководителем, поиск дублей и склейка их скриптом, серии дней и пропуски в календаре, деление на ноль и размножение строк при соединении, воронка найма и когорты. Условия короткие, краевые случаи жёсткие, ответ проверяется на скрытых наборах данных — вписать его литералом не выйдет.
Что тебя ждёт в этом пути
Что ты построишь
25 решений на PostgreSQL для типовых секций SQL-собеседования. Все задачи работают с одной HR-системой «Пульс»: сотрудниками, отделами, откликами, интервью и календарём посещений. Начнёшь со второй по величине зарплаты и топ-N, закончишь воронкой найма и когортами. Каждый запрос проверяется на скрытых наборах данных, поэтому подогнать ответ под известные строки не получится.
Для кого
Для аналитика, бэкенд- или дата-разработчика, который уже знает SELECT, WHERE и GROUP BY, но хочет отработать задачи SQL для собеседования без подсматривания в готовый ответ. Путь не пересказывает синтаксис с нуля: здесь важнее увидеть подвох в данных, выбрать устойчивый запрос и объяснить своё решение.
Что нужно знать до старта
- Уверенно писать SELECT, WHERE, GROUP BY и базовые JOIN
- Понимать NULL и порядок выполнения частей SQL-запроса
Чему научишься
- Выбирать второе значение, топ-N и лидеров группы с правильной обработкой ничьих
- Сравнивать строки одной таблицы через self-join и агрегаты своей группы
- Искать и склеивать дубли, не ломаясь на NULL и связях между таблицами
- Находить пропуски и серии дат через LEAD, generate_series и gaps and islands
- Защищать агрегаты от деления на ноль, целочисленного деления и размножения строк
- Считать воронки, накопительные итоги и когорты с оконными функциями SQL
Задачи пути — 5 модулей, 25 задач
Каждый модуль — навык. Решаешь задачи по порядку, и к финалу из них собирается рабочий результат.
Готов начать этот путь?
Зарегистрируйся — откроем путь прямо на первой задаче. Без установки и настройки, всё в браузере.