Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы (2011) / Бочаров, Кобец / Лабораторная работа 5.docx
Скачиваний:
56
Добавлен:
28.06.2014
Размер:
2.19 Mб
Скачать

Задание 11

Выдать статистику по городам вашего государства и только по студентам (исключая другие категории обучения). Отчет должен начина­ться с соответствующего заголовка и цифры - общего количества записей по запросу (всего студентов). Далее таблица, включающая перечень го­родов с цифрами, не равными нулю.

create procedure lr5_p11 as

begin

select COUNT(*) as 'Количество'

from arm

join kat_obuch on kat_obuch_k = cod

where kat_obuch_k in (select cod from kat_obuch where kat_obucheniya like 'СТУДЕНТ%')

select nazvanie_goroda as 'Название города',COUNT(*)as'Количество'

from arm

join vuz_gorod on vuz_k = cod_vuza

where kat_obuch_k in (select cod from kat_obuch where kat_obucheniya like 'СТУДЕНТ%')

group by nazvanie_goroda

order by nazvanie_goroda

end

Задание 12

Выдать статистику по учебным заведениям вашего государства, включая цифры по выпуску 1994 года. Отчет должен начинаться с заго­ловка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень названий учебных заведений с двумя цифрами (у каждого учебного заведения): 1) всего по учебному заведению (не рав­ная нулю); 2) выпуск 1994 года.

create procedure lr5_p12 @god VARCHAR(2) as

begin

select COUNT(*) as 'Количество'

from arm

where gok =@god

select uch_zavedenie as 'ÂÓÇ', COUNT(*) as 'Общее количество',

SUM(CASE WHEN gok = @god THEN 1 when not gok = @god THEN 0 END) as 'Выпуск заданного года'

from arm

join vuz on cod = vuz_k

group by uch_zavedenie

order by uch_zavedenie

end

Задание 13

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

create procedure lr5_p13 as

begin

select COUNT(*)as 'Количество'

from arm

join kat_obuch on kat_obuch_k = cod

where not ((kat_obucheniya LIKE 'ЗАОЧНИК%')or(kat_obucheniya LIKE 'АСПИРАНТ%'))

select kat_obucheniya as 'Категория обучения', COUNT(*) as 'Количество'

from arm

join kat_obuch on kat_obuch_k = cod

where not ((kat_obucheniya LIKE 'ЗАОЧНИК%')or(kat_obucheniya LIKE 'АСПИРАНТ%'))

group by kat_obucheniya

order by kat_obucheniya

end

Задание 14

Выдать статистику по специальностям 4-ой, 5-ой и 6-ой групп (т. е. специальности от 0401 до 0699) учащихся вашего государства. Отчет должен начинаться с соответствующего заголовка и цифры - обще­го количества записей по запросу. Далее таблица, включающая перечень требуемых шифров специальностей с цифрами, не равными нулю.

create procedure lr5_p14 @sp1 VARCHAR(6),@sp2 VARCHAR(6) AS

begin

select COUNT(*) as 'Количество'

from arm

where spec between @sp1 and @sp2

select spec as 'Специальность',COUNT(*) as 'Количество'

from arm

where spec between @sp1 and @sp2

group by spec

order by spec

end

Задание 15

Выдать статистику по учебным заведениям столицы вашего госу­дарства. Отчет должен начинаться с заголовка, включающего название города и цифру - общее количество записей по запросу (всего по сто­лице). Далее таблица, включающая перечень требуемых учебных заведений с цифрами, не равными нулю.

create procedure lr5_p15 as

begin

select COUNT(*) as 'Количество' from arm

join vuz_gorod on vuz_k = cod_vuza

where nazvanie_goroda LIKE 'ЕРЕВАН%'

select nazvanie_vuza as 'Учебное заведение', COUNT(*) as 'Количество'

from arm

join vuz_gorod on vuz_k = cod_vuza

where nazvanie_goroda LIKE 'ЕРЕВАН%'

group by nazvanie_vuza

order by nazvanie_vuza

end