Добавил:
sergey123
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:БД / 1
.txt 1.Вывести список сотрудников по алфавиту.
SELECT*
FROM EMP
ORDER BY Name DESC;
2.Вывести всех инженеров, (имя, зарплату и дату рождения) в порядке убывания стажа.
SELECT Name,Salary,Born_date,Hire_date
FROM EMP
WHERE ID_Job = (SELECT ID_Job FROM JOB WHERE Job = 'инженер')
ORDER BY YEAR (Hire_date) Asc;
3.Вывести общий список всех инженеров (из всех отделов), зарплата которых не ниже 3000, и сотрудников отдела 2.
SELECT Name,Salary,Born_date,ID_Dep
FROM EMP
WHERE (ID_JOB = (SELECT ID_Job FROM JOB WHERE Job = 'инженер')And Salary >= 3000)
And EMP.ID_Dep=2;
4.Вывести номера отделов и количество сотрудников, которые в них работают.
SELECT ID_DEP ,COUNT (*)
FROM EMP
GROUP BY ID_Dep;
5.Вывести имя сотрудника, его должность и имя руководителя, за которым он закреплен.
SELECT Name,
(SELECT Job FROM JOB WHERE ID_Job=r.ID_Job),
(SELECT Name FROM EMP WHERE ID_Emp=r.ID_man) FROM EMP AS r;
6.Вывести названия отделов, в которых минимальная зарплата сотрудников превышает 1000.
SELECT Department
FROM DEP
WHERE (SELECT min(Salary)FROM EMP WHERE ID_Dep = DEP.ID_Dep)>500;
7.Вывести список сотрудников, получающих надбавки.
SELECT *
FROM EMP
WHERE ID_Emp = ANY (SELECT ID_Emp FROM BONUS);
8.Вывести имя сотрудника, который получает максимальную надбавку.
SELECT *
FROM EMP
WHERE ID_Emp = (SELECT ID_Emp FROM BONUS WHERE Bonus= (SELECT max (Bonus) FROM BONUS ));
SELECT*
FROM EMP
ORDER BY Name DESC;
2.Вывести всех инженеров, (имя, зарплату и дату рождения) в порядке убывания стажа.
SELECT Name,Salary,Born_date,Hire_date
FROM EMP
WHERE ID_Job = (SELECT ID_Job FROM JOB WHERE Job = 'инженер')
ORDER BY YEAR (Hire_date) Asc;
3.Вывести общий список всех инженеров (из всех отделов), зарплата которых не ниже 3000, и сотрудников отдела 2.
SELECT Name,Salary,Born_date,ID_Dep
FROM EMP
WHERE (ID_JOB = (SELECT ID_Job FROM JOB WHERE Job = 'инженер')And Salary >= 3000)
And EMP.ID_Dep=2;
4.Вывести номера отделов и количество сотрудников, которые в них работают.
SELECT ID_DEP ,COUNT (*)
FROM EMP
GROUP BY ID_Dep;
5.Вывести имя сотрудника, его должность и имя руководителя, за которым он закреплен.
SELECT Name,
(SELECT Job FROM JOB WHERE ID_Job=r.ID_Job),
(SELECT Name FROM EMP WHERE ID_Emp=r.ID_man) FROM EMP AS r;
6.Вывести названия отделов, в которых минимальная зарплата сотрудников превышает 1000.
SELECT Department
FROM DEP
WHERE (SELECT min(Salary)FROM EMP WHERE ID_Dep = DEP.ID_Dep)>500;
7.Вывести список сотрудников, получающих надбавки.
SELECT *
FROM EMP
WHERE ID_Emp = ANY (SELECT ID_Emp FROM BONUS);
8.Вывести имя сотрудника, который получает максимальную надбавку.
SELECT *
FROM EMP
WHERE ID_Emp = (SELECT ID_Emp FROM BONUS WHERE Bonus= (SELECT max (Bonus) FROM BONUS ));