Задание 6
Выдать статистику по годам приема учащихся вашего государства. Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень годов приема с цифрами, не равными нулю.
select COUNT(*) as 'Общее кол-во'
from bel
select gp as 'Год приёма',
COUNT(*) as 'Кол-во'
from bel
group by gp
Задание 7
Выдать статистику по годам окончания учебы учащихся вашего государства. Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень годов окончания с цифрами, не равными нулю.
select COUNT(*) as 'Общее кол-во'
from bel
select gok as 'Год окончания',
COUNT(*) as 'Кол-во'
from bel
group by gok
Задание 8
Выдать статистику по категориям обучения учащихся вашего государства только прием 1991 года. Отчет должен начинаться заголовком и цифрой - общим количеством записей по запросу (по приему 91-го года). Далее таблица, включающая перечень категорий обучения с цифрами, не равными нулю.
select COUNT(*) as 'Общее кол-во'
from bel
where gp = '91'
select kat_obuch.kat_obucheniya as 'Категория обучения',
COUNT(*) as 'Всего'
from bel join kat_obuch on cod = kat_obuch_k
where gp = '91'
group by kat_obuch.kat_obucheniya
Задание 9
Выдать статистику по вашему государству по следующим специальностям: 0401 , 0402, 0403 и 0405 (общее число по каждой специальности), а также количества мужчин и женщин по каждой из этих специальностей. Отчет должен начинаться с соответствующего заголовка. Далее таблица из четырех строчек, где каждая строчка включает шифр специальности и 3 цифры: всего, количество мужчин и количество женщин.
select COUNT(*) as 'Общее кол-во'
from bel
where spec in ('000401','000404','000403','000405')
select spec as 'Специальность',
COUNT(*) as 'Всего',
sum(case pol when 'М' then 1 else 0 end) as 'Количество мужчин',
sum(case pol when 'Ж' then 1 else 0 end) as 'Количество женщин'
from bel
where spec in ('000401','000404','000403','000405')
group by spec
Задание 10
Выдать статистику по семейному положению учащихся вашего государства, заканчивающих учебу в 1994 или в 1995 году. Отчет должен начинаться с соответствующего заголовка. Далее - две таблицы, где каждая таблица начинается с заголовка: ГОД ВЫПУСКА <год> - ВСЕГО <цифра> (не равная нулю), а заканчивается перечнем семейных положений с цифрами, не равными нулю.
Создадим хранимую процедуру:
create procedure sem_polog (@x char(2)) as
select @x as 'Год окончания',
count(*) as 'Количество'
from bel join kat_obuch on cod = kat_obuch_k
where gok = @x
and kat_obuch.kat_obucheniya = 'УЧАЩИЙСЯ'
select family.family_status as 'Семейное положение',
count(*) as 'Количество'
from bel join kat_obuch on kat_obuch.cod = kat_obuch_k
join family on family.cod = sem_polog_k
where gok = @x
and kat_obuch.kat_obucheniya = 'УЧАЩИЙСЯ'
group by family_status
Вызов:
exec sem_polog '94'
exec sem_polog '95'