выберите максимальное количество в SQL - PullRequest
1 голос
/ 25 февраля 2020

Я пытаюсь написать запрос, который возвращает максимальную зарплату, заработанную многочисленными сотрудниками, и количество людей, заработавших максимальную сумму. например, если 20000 долларов были максимальной суммой, заработанной всеми сотрудниками, и 2 сотрудника заработали ее, я хочу вернуть (20000, 2).

select count(*) as count, max(months*salary) as maxSalary from employees;

это возвращает максимальную зарплату, но возвращает количество всех сотрудников в таблице, я пробовал использовать счет (макс (месяцы * зарплата)), но это не работа, есть ли функция, которая может мне помочь?

Ответы [ 2 ]

3 голосов
/ 25 февраля 2020

Думайте об агрегации и limit:

select (months * salary) as Salary, count(*) as count
from employees
group by months * salary
order by months * salary desc
limit 1;
2 голосов
/ 25 февраля 2020
 select months*salary, count(*) from employees
 where months*salary = (select max(months*salary)  from employees)
 group by months*salary;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...