[!] SQL Задачи собеседований: (в т.ч. для middle Средний разработчик)

Задача 1, пример решения с помощью подзапроса для SQL запроса, где надо
вывести список людей, которые получают максимальную зарплату в своём отделе:

SELECT * FROM persons 
  WHERE (department_id, salary) IN 
    (SELECT department_id, MAX(salary) FROM persons GROUP BY department_id);

Это решение будет оптимальным или есть вариант без подзапроса ?

vedro-compota's picture

просьба скопировать коммент сюда (вынес задачку отдельно): https://fkn.ktu10.com/?q=node/17025

_____________
матфак вгу и остальная классика =)