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

4.3. Вариант 3

1) По каждому преподавателю выведите его имя и сумму hiredate + salary (столбец с именем

«Дата»). Что получается в результате вычисления hiredate + salary?

SELECT Name as TEACHER_NAME, Hiredate + SalaryFROM TEACHER;

2) По каждой дисциплине вывести ее название и названия факультетов, на которых читаются эти

дисциплины на третьем курсе

SELECT s.Name, f.Name FROM FACULTY f, DEPARTMENT d, SGROUP g, LECTURE l, SUBJECT s WHERE f.FacPK = d.FacFK AND d.DepPK=g.DepFK AND g.GrpPK = l.GrpFK AND l.SbjFK=s.SbjPK AND g. Course = 3

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

SELECT f.Name FROM DEPARTMENT source, TEACHER t, LECTURE l, SGROUP g, DEPARTMENT result, FACULTY f WHERE source.DepPK=g.DepFK AND g.GrpPK=l.GrpFK AND l.TchFK=t.TchPK AND t.DepFK= result.DepPK AND result.FacFK=f.FacPK AND source.Name= 'ИПО'

4) Вывести названия кафедр, на которых непосредственные подчиненные заведующих кафедр

имеют зарплату (salary+commission) в диапазоне 2000-3000

SELECT d.Name FROM DEPARTMENT d, TEACHER boss, TEACHER subord WHERE d.HeadFK=boss.TchPK AND boss.TchPK= subord.ChiefFK AND subord.Salary+ subord.Commission BETWEEN 2000 AND 3000

5) Вывести названия дисциплин, которые читаются преподавателями-профессорами кафедр,

расположенных в корпусах 1, 4, 6, 7 , 9, 10

SELECT s.Name FROM DEPARTMENT d, TEACHER t, LECTURE l, SUBJECT s WHERE d.DepPK=t.DepFK AND t.TchPK=l.TchFK AND l.SbjFK=s.SbjPK AND LOWER(t.Post)= 'профессор' AND d.Building IN ('1', '4', '6', '7', '9', '10')

6) Вывести имена преподавателей и номера групп и курсов, в которых они являются кураторами.

Причем, если какой-то преподаватель не является куратором никакой группы, то его имя все равно

выводится, а вместо номера группы и курса выводятся цифры 0.

7) Вывести номера групп и их курс факультета с фондом финансирования больше 20000 и

рейтингом больше 10 ИЛИ группы факультета из корпуса 6 и с рейтингом меньше 70 ИЛИ группы

факультета из корпуса 5 и с рейтингом больше 40

SELECT g.Num, g.Course FROM FACULTY f, DEPARTMENT d, SGROUP g WHERE f.FacPK=d.FacFK AND d.DepPK=g.DepFK AND (f.Fund > 20000 AND g.Rating > 10 OR f.Building = '6'AND g.Rating < 70 OR f.Building = '5'AND g.Rating > 40)

Соседние файлы в папке Лабораторная работа 4. Предложение SELECT в SQL Oracle. Основные возможности (ПРОДОЛЖЕНИЕ)