Middle+
Exercițiul 3 Dat fiind următorul structur SQL al bazei de date --Tabelul Departments create table D ( Id int primary key, Name nvarchar(100), ) --Tabelul Employees create table E ( Id int primary key, DepartmentId int foreign key references Departments(Id), Name nvarchar(100), Salary float, ) Este necesar: a. Scrieți o interogare pentru a obține numele unui angajat cu cel mai mare salariu din companie și numele departamentului său b. Obțineți lista departamentelor a căror salariu mediu este mai mare de 1000$
sobes.tech AI
Răspuns de la AI
a. Чтобы получить имя сотрудника с максимальной зарплатой и название его отдела, можно использовать следующий SQL-запрос:
SELECT E.Name AS EmployeeName, D.Name AS DepartmentName
FROM Employees E
JOIN Departments D ON E.DepartmentId = D.Id
WHERE E.Salary = (SELECT MAX(Salary) FROM Employees)
b. Для получения списка отделов, где средняя зарплата больше 1000$, запрос будет таким:
SELECT D.Name AS DepartmentName
FROM Departments D
JOIN Employees E ON E.DepartmentId = D.Id
GROUP BY D.Id, D.Name
HAVING AVG(E.Salary) > 1000
Эти запросы используют агрегатные функции и соединения для получения нужных данных.