кодесурса
«SQL

Подзапросы SQL к сотруднику База данных: укажите имя, зарплату и идентификатор отдела для каждого сотрудника, который получает заработную плату, превышающую среднюю зарплату для своего отдела, и укажите результат в порядке возрастания по идентификатору отдела.

script1adsense2code
script1adsense3code

Подзапросы SQL к базе данных сотрудника: упражнение 53 с решением

[ Внизу страницы доступен редактор для написания и выполнения сценариев. ]

53. Напишите запрос в SQL, чтобы перечислить имя, зарплату и идентификатор отдела для каждого сотрудника, который получает заработную плату, превышающую среднюю зарплату для своего отдела, и вывести результат в порядке возрастания по идентификатору отдела.

Пример таблицы : сотрудники


Пример решения:

SELECT e.emp_name,
       e.salary,
       e.dep_id
FROM employees e
WHERE salary >
    (SELECT avg(salary)
     FROM employees
     WHERE e.dep_id = dep_id )
ORDER BY dep_id;

ИЛИ ЖЕ

SELECT e.emp_name,
       e.salary,
       e.dep_id
FROM employees e,
  (SELECT avg(salary) A,
          dep_id D
   FROM employees
   GROUP BY dep_id) D1
WHERE D1.D = e.dep_id
  AND e.salary > D1.A;

Пример вывода:

 emp_name | зарплата | dep_id
---------- + --------- + --------
 КАЙЛИНГ | 6000,00 | 1001
 ЙОНАС | 2957,00 | 2001
 Скарлет | 3100,00 | 2001
 Фрэнк | 3100,00 | 2001
 BLAZE | 2750,00 | 3001
 АДЕЛЫН | 1700,00 | 3001
(6 рядов)

Практика онлайн


Структура базы данных сотрудников:


Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите запрос в SQL, чтобы найти последние нанятые emp в каждом заказе отдела по hire_date.
Далее: Написать запрос в SQL, чтобы найти имя и назначение сотрудников, которые получают комиссию и зарплата является максимальной

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code