Сгруппировать и вывести разницу между максимальным и минимальным значением

По данным из таблицы HR.EMPLOYEES сформировать список должностей с указанием job_id, количества сотрудников, суммарной зарплаты и разницы между самой высокой и самой низкой зарплатой.

Пример таблицы HR.EMPLOYEES:

EMPLOYEE_ID FIRST_NAME  LAST_NAME   EMAIL   PHONE_NUMBER    HIRE_DATE   JOB_ID  SALARY COMMISSION_PCT   MANAGER_ID  DEPARTMENT_ID
   100   Steven           King     SKING    515.123.4567    17-JUN-03   AD_PRES   24000      -         -             90

Ответы (1 шт):

Автор решения: SwaD

Выбираем данные, сгруппированные по job_id

select 
  job_id, 
  count(job_id) CNT_WORKER, 
  sum(salary) SALARY_ALL,
  max(salary) - min(salary) SALARY_DELTA
from HR.EMPLOYEES 
group by job_id;

count - Количество
sum - выводит сумму всех значений для группы
max - выводит максимальное значение для группы
min - выводит минимальное значение для группы

→ Ссылка