SQL Middle Оконные функции спрашивают часто обновлено

Место по зарплате в отделе

Условие

Для каждого сотрудника, у которого есть отдел, выведи его место по зарплате внутри отдела: самая высокая зарплата получает 1, равные зарплаты получают одинаковое место, места идут без пропусков.

Колонки: name, department_id, salary, rnk. Порядок строк не важен.

Как подойти

Подсказки: 2
  1. ROW_NUMBER, RANK или DENSE_RANK?
  2. Нумерация отдельно в каждом отделе: PARTITION BY.

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.

Термины по теме