Агрегатные функции PostgreSQL и группировка по: получите максимальную зарплату каждого поста, которая составляет или превышает определенную сумму
13. Напишите запрос, чтобы получить идентификатор вакансии, и максимальная зарплата каждого поста для максимальной зарплаты составляет 4000 долларов США или выше.
Пример решения:
Код:
SELECT job_id, MAX(salary)
FROM employees
GROUP BY job_id
HAVING MAX(salary) >=4000;
Пример таблицы: сотрудники
Выход:
pg_exercises = # SELECT job_id, MAX (зарплата) pg_exercises- # ОТ сотрудников pg_exercises- # GROUP BY job_id pg_exercises- # HAVING MAX (зарплата)> = 4000; job_id | Максимум ------------ + ---------- AC_ACCOUNT | 8300,00 ST_MAN | 8200,00 IT_PROG | 9000,00 SA_MAN | 14000,00 AD_PRES | 24000,00 AC_MGR | 12000,00 FI_MGR | 12000,00 AD_ASST | 4400,00 MK_MAN | 13000,00 HR_REP | 6500,00 PR_REP | 10000,00 FI_ACCOUNT | 9000,00 SH_CLERK | 4200,00 AD_VP | 17000,00 SA_REP | 11500,00 MK_REP | 6000,00 PU_MAN | 11000,00 (17 рядов)
Практика онлайн
Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.
Предыдущий: Напишите запрос, чтобы получить общую зарплату, максимальную, минимальную и среднюю зарплату всех должностей для тех отделов с ID 90.
Далее: Напишите запрос, чтобы получить среднюю зарплату для всех отделов, в которых работает более 10 сотрудников.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code