Скачиваний:
3
Добавлен:
15.01.2021
Размер:
139.77 Кб
Скачать

3.2. Вариант 2

1) По каждому преподавателю факультета компьютерных наук, который имеет зарлату (salary+commission) больше, чем зарплата преподавателя Иванова с кафедры ИПО, вывести следующую информацию в столбцах с соответствующими именами:

- имя этого преподавателя Преподаватель

- должность преподавателя Должность

- имя декана факультета компьютерных наук Декан факультета

SELECT TEACHER.SALARY as "Зарплата Ивановa" FROM TEACHER WHERE TEACHER.Name = 'Иванов';

SELECT TEACHER.Name as "Преподаватель", TEACHER.Post as "Должность "

FROM TEACHER

WHERE (TEACHER.SALARY + TEACHER.COMMISSION) > 2000;

2) Вывести названия факультетов, в которых имеется менее 20 профессоров

SELECT COUNT(TEACHER.DEPFK) as "Кол-во профессоров на факультете Нафтогазової інженерії"

FROM TEACHER

WHERE TEACHER.DEPFK = 1 AND TEACHER.POST = 'профессор';

SELECT COUNT(TEACHER.DEPFK) as "Кол-во профессоров на факультете Лінгвістики та права"

FROM TEACHER

WHERE TEACHER.DEPFK = 2 AND TEACHER.POST = 'профессор';

SELECT COUNT(TEACHER.DEPFK) as "Фізичної терапії"

FROM TEACHER

WHERE TEACHER.DEPFK = 3 AND TEACHER.POST = 'профессор';

SELECT COUNT(TEACHER.DEPFK) as "Кол-во профессоров на факультете Економіки та менеджменту"

FROM TEACHER

WHERE TEACHER.DEPFK = 4 AND TEACHER.POST = 'профессор';

SELECT FACULTY.Name

FROM FACULTY;

3) Вывести названия факультетов и имена их деканов, на которых имеется хотя бы один преподаватель профессор

SELECT COUNT(TEACHER.DEPFK) as "Кол-во профессоров на факультете Нафтогазової інженерії"

FROM TEACHER

WHERE TEACHER.DEPFK = 1 AND TEACHER.POST = 'профессор';

SELECT TEACHER.Name as "доцент"

FROM TEACHER

WHERE TEACHER.DEPFK = 1 AND TEACHER.POST = 'доцент';

SELECT COUNT(TEACHER.DEPFK) as "Кол-во профессоров на факультете Лінгвістики та права"

FROM TEACHER

WHERE TEACHER.DEPFK = 2 AND TEACHER.POST = 'профессор';

SELECT TEACHER.Name as "доцент"

FROM TEACHER

WHERE TEACHER.DEPFK = 2 AND TEACHER.POST = 'доцент';

SELECT COUNT(TEACHER.DEPFK) as "Фізичної терапії"

FROM TEACHER

WHERE TEACHER.DEPFK = 3 AND TEACHER.POST = 'профессор';

SELECT TEACHER.Name as "доцент"

FROM TEACHER

WHERE TEACHER.DEPFK = 3 AND TEACHER.POST = 'доцент';

SELECT COUNT(TEACHER.DEPFK) as "Кол-во профессоров на факультете Економіки та менеджменту"

FROM TEACHER

WHERE TEACHER.DEPFK = 4 AND TEACHER.POST = 'профессор';

SELECT TEACHER.Name as "доцент"

FROM TEACHER

WHERE TEACHER.DEPFK = 4 AND TEACHER.POST = 'доцент';

4) Вывести названия факультетов, фонды финансирования которых больше фондов финансирования любой из кафедр факультета компьютерных наук

5) Вывести такие тройки значений «имя преподавателя-номер группы-курс группы», что - этот преподаватель преподает этой группе данного курса

- он преподает более одной дисциплины в этой группе этого курса

- он имеет в этой группе этого курса больше занятий, чем количество занятий преподавателя Иванова в этой же группе этого курса

6) Вывести среднее количество дисциплин на одну кафедру

SELECT l.cnt/f.cnt

FROM (SELECT SUM(LECTURE.SBJFK) as cnt FROM LECTURE) l,

(SELECT COUNT(*) as cnt FROM FACULTY) f;

7) По каждому факультету вывести:

- название факультета

- количество кафедр на факультете

- количество студентов 3-го курса на факультете

Соседние файлы в папке Лабораторная работа 6. Вложенные запросы (подзапросы) в SQL Oracle_