Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Função MAX usada com a cláusula GROUP BY


Primeiro você tem que obter o salário máximo para cada departamento:
SELECT department, max(salary) as max_salary
FROM test
GROUP BY department

então você pode juntar de volta esta subconsulta à tabela de teste:
SELECT t.*
FROM
  test t INNER JOIN (
    SELECT department, max(salary) as max_salary
    FROM test
    GROUP BY department
  ) d ON t.department=d.department AND t.salary=d.max_salary