Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы БД.doc
Скачиваний:
145
Добавлен:
02.04.2015
Размер:
390.14 Кб
Скачать

30. Даны отношения, моделирующие реальный учебный процесс:

R1

ФИО преподавателя

Должность

Кафедра

R2

ФИО студента

группы

КП

Оц.1

Оц.2

Оц.3

Оц.4

Оц.5

R3

День недели

пары

ФИО преподавателя

группы

Аудитория

R4

Аудитория

Корпус

  1. Группы, студенты которых ни в один день недели не переезжают в несколько корпусов.

SELECT DISTINCT R3.Day, R3.NGroup, R4.Korpus FROM R3, R4 WHERE R3.Audit = R4.Audit GROUP BY R3.Day, R3.NGroup, R4.Korpus HAVING Count(*) = 1

  1. Группы, у которых ведут занятия преподаватели только одной кафедры.

SELECT DISTINCT R3.NGroup, R1.Kaf FROM R1.Prepod = R3.Prepod GROUP BY R3.NGroup HAVING Count(*) = 1

  1. Кафедры, на которых не работает ни одного ассистента (должность — «Ассистент»).

SELECT DISTINCT Kaf FROM R1 WHERE Kaf not in (SELECT Kaf FROM R1 WHERE Dol = ‘Ассистент’)

  1. Группы, в которых не учится ни один отличник (отличник — все пятерки по сессии).

SELECT DISTINCT NGroup FROM R2 WHERE NGroup not in(SELECT NGroup FROM R2 WHERE Bal1 = 5 and Bal2 = 5 and Bal3 = 5 and Bal 4 = 5 and Bal5 = 5)

  1. Группы, студенты которых сдали сессию только на отлично.

SELECT DISTINCT R5.NGroup FROM (SELECT NGroup, Stud FROM R2 WHERE Stud in(SELECT Stud FROM R2 WHERE Bal1 = 5 and Bal2 = 5 and Bal3 = 5 and Bal4 = 5 and Bal5 = 5)) as R5, (SELECT NGroup, Stud FROM R2 WHERE) R6 WHERE R5.NGroup = R6.NGRroupGROUP BY R5.NGroup HAVING Count(R5.Stud) = Count(R6.Stud)

31. Даны отношения, моделирующие архив периодических изданий:

R1

Название журнала

Страна

Издание

R2

ФИО автора

Название статьи

Область знаний

Название журнала

Год издания

  1. Страны, которые издают несколько журналов по одной области знаний.

SELECT Country FROM (SELECT DISTINCT R1.Country, R2.Area FROM R1, R2 WHERE R1.NameMag = R2.NameMag

GROUP BY R1.Country, R2.Area HAVING Count(*) = 1)

  1. Страны, которые издают не более одного журнала по одной области знаний (т.е. в общем случае несколько журналов, но по одной области знаний - только один).

SELECT DISTINCT Country FROM R1 WHERE Country not in(SELECT Country FROM (SELECT R1.Country, R2.Area, R2.NameMag FROM R1, R2 WHERE R1.NameMag = R2.NameMag GROUP BY R1.Country, R2.Area, R2.NameMag HAVING Count(*) > 1) as R3)

  1. Специализированные журналы за 1994 г., т.е. содержащие статьи только по одной области знаний).

SELECT NameMag, Area FROM R2 WHERE Year = 1994 GROUP BY NameMag, Area HAVING Count(Area) = 1

  1. Журналы, в которых публикуются статьи по всем областям знаний.

SELECT NameMag, Area FROM R2 GROUP BY NameMagm, Area HAVING Count(*) = (SELECT Count(DISTINCT Area) FROM R2)

32. Даны отношения, моделирующие потенциал кафедры по проведению учебных занятий, здесь под типом занятий следует понимать некоторый набор возможных типов, например: лекции, лабораторные, курсовой проект и т.д.

R1

ФИО преподавателя

Кафедра

R2

Дисциплина

Курс

R3

ФИО преподавателя

Дисциплина

Тип занятия

  1. Преподавателей, которые могут только читать лекции.

SELECT DISTINCT Prepod FROM R3 WHERE Tip = ‘Лекция’ and Prepod in(SELECT DISTINCT Prepod, Tip FROM R3 GROUP BY Prepod, Tip HAVING Count(*) = 1)

  1. Кафедры, преподаватели которых не ведут курсового проектирования.

SELECT DISTINCT R1.Kaf, R3.Tip FROM R1, R3 WHERE R1.Prepod = R3.Prepod and R3.Tip <> ‘Курсовая’

  1. Курсы, на которых ведут занятия преподаватели кафедры 44.

SELECT DISTINCT Kurs FROM (SELECT DISTINCT R2.Kurs, R1.Kaf FROM R1, R2, R3 WHERE R2.Disc = R3.Disc and R3.Prepod = R1.Prepod and R1.Kaf = 44)

  1. Кафедры, преподаватели которых работают только на младших курсах (1-ом или 2-ом).

SELECT DISTINCT Kaf FROM (SELECT DISTINCT R2.Kurs, R1.Kaf FROM R1, R2, R3 WHERE R2.Disc = R3.Disc and R3.Prepod = R1.Prepod and R2.Kurs < 3)