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

Тема 7 Вложенные запросы

Задание 1

Выведите отсортированный список дисциплин участвующих в учебном плане.

Код запроса:

Select * from Дисциплиныwhere Код in

(Select Код_дисциплины from Учебный_план) order by полное

Задание 2

Вывести только те дисциплины код, которых больше среднего значения кода дисциплины.

Код запроса:

select код, полное, для_группы, для_подгруппы from Дисциплины

where код>(select avg(код) from Дисциплины)

Задание 3

Используя таблицу учебный план выяснить максимальное количество часов, отводимое на определенный тип дисциплины.

Код запроса:

Select max(Максимальное) from (Select Максимальное= sum (Количество_часов) from Учебный_план group by Тип_дисциплины) as b

Задание 4

Вывести тип дисциплины, на которую больше всего отводится времени.

Код запроса:

Select Тип_дисциплины from Учебный_план

where Количество_часов=(Select max(Количество_часов) from Учебный_план)

Задание 5

Вывести только те записи, из учебного плана, которые относятся к тому типу пар, на который отводится больше всего времени.

Код запроса:

Select * from Учебный_план where Тип_дисциплины in(Select Тип_дисциплины from Учебный_план where Количество_часов=(Select max(Количество_часов) from Учебный_план))

Задание 6

Вывести только те записи при условии что: количество часов меньше среднего значения количества часов, семестр самый минимальный и код дисциплины больше среднего значения кода дисциплины.

Код запроса:

Select * from Учебный_план where Количество_часов<(Select avg (Количество_часов) from Учебный_план) and Семестр in(Select min(Семестр) from Учебный_план) and Код_дисциплины>(select avg(Код_дисциплины) from Учебный_план)

Задание 7

Определить среднее количество часов, отводимых на каждую группу.

Код запроса:

select Группа, avg (Количество_часов)as Среднее количество часов from группы as a, учебный_план as b, Тарификация as c where c.код_группы= a.код_группы and c.Код_учебного_плана=b.Код_учебного_плана group by Группа

Задание 8

Выведите самую популярную дисциплину.

Код запроса:

select полное from дисциплины where код=(select Код_дисциплины from

(Select Код_дисциплины, count(*) as g from Учебный_план group by Код_дисциплины) as d where g=(select max(g) from (Select Код_дисциплины, count(*) as g from Учебный_план group by Код_дисциплины) as r))

Задание 9

Вывести дисциплины, которые ведут преподаватели ПЦК «Информационных дисциплин и математики».

Код запроса:

select distinct полное from (select полное, ПЦК.название from дисциплины,

учебный_план, Тарификация, преподаватели, ПЦК

where учебный_план.код_дисциплины=дисциплины.код

and Тарификация.код_учебного_плана=учебный_план.код_учебного_плана

and Тарификация.код_преподавателя=преподаватели.код_преподавателя

and преподаватели.пцк=ПЦК.номер_пцк)as bg

where название='Информационных дисциплин и математики'

order by полное desc

Задание 10

Определить общее количество часов выдаваемых ПЦК «Информационных дисциплин и математики»

Код запроса:

select sum (Количество_часов) as Количество from

(select дисциплины.полное, название, Количество_часов

from дисциплины, учебный_план, Тарификация, преподаватели, ПЦК

where учебный_план.код_дисциплины=дисциплины.код

and Тарификация.код_учебного_плана=учебный_план.код_учебного_плана

and Тарификация.код_преподавателя=преподаватели.код_преподавателя

and преподаватели.пцк=ПЦК.номер_пцк)as a

where название='Информационных дисциплин и математики'

Задание 11

Определить количество часов отводимых на каждый семестр по специальностям. (отсортировать по специальности, внутри – по семестрам)

Код запроса:

Select b.название, семестр, sum(a.Количество_часов) as Сумма

from Учебный_план as a inner join Специальности as b on a.код_специальности= b.код_специальности group by семестр, b.название

Задание 12

Определить какой преподаватель, в какой группе ведет большее количество дисциплин (сколько).

Код запроса:

select * from (select группа, фио, count (полное) as

Количество from (select distinct группа, фио, полное from Тарификация as a, Преподаватели as b, группы as c, Учебный_план as d, дисциплины as e

where b.код_преподавателя=a.код_преподавателя and a.код_группы= c.код_группы and a.код_учебного_плана=d.код_учебного_плана and d.код_дисциплины=e.код) as rr group by группа,фио) as t where количество in (select max(количество) as ww from (select группа,фио,count (полное) as Количество from (select distinct группа, фио, полное from Тарификация as a, Преподаватели as b, группы as c, Учебный_план as d, дисциплины as e where b.код_преподавателя=a.код_преподавателя and a.код_группы=c.код_группы and a.код_учебного_плана=d.код_учебного_плана and d.код_дисциплины=e.код) as r group by группа,фио) as t)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]