Sobes.tech
Back to questions
Middle+
3

SQL задача: а) Получить имя сотрудника с максимальной зарплатой и название его отдела; б) Получить список отделов, средняя зарплата в которых больше 1000$

Companies where asked
PyrusPyrus

Answer from AI

sobes.tech AI

а) Чтобы получить имя сотрудника с максимальной зарплатой и название его отдела, можно использовать подзапрос для поиска максимальной зарплаты и соединение с таблицей отделов:

SELECT e.name, d.department_name
FROM employees e
JOIN departments d ON e.department_id = d.id
WHERE e.salary = (SELECT MAX(salary) FROM employees);

б) Для получения списка отделов, где средняя зарплата больше 1000$, используем группировку и фильтрацию по агрегатной функции:

SELECT d.department_name
FROM employees e
JOIN departments d ON e.department_id = d.id
GROUP BY d.department_name
HAVING AVG(e.salary) > 1000;

Здесь предполагается, что есть таблицы employees с полями name, salary, department_id и departments с полями id, department_name.