Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
53
Добавлен:
07.08.2013
Размер:
395.62 Кб
Скачать

5.2 Завдання 2

Підготувати і занести в таблиці контрольні дані

Розв'язок задачі

-- Вставляємо контрольні дані в таблицю ‘Регіони’

insert into region values(1, 'Передкарпатська нафтогазоносна область');

insert into region values(2, 'Днiпровсько-Донецька нафтогазоносна область');

insert into region values(3, 'Причорноморсько-Кримська газонафтоносна впадина');

-- Вставляємо контрольні дані в таблицю ‘області’

insert into oblast values(1,1,'Івано-Франківська');

insert into oblast values(2,2,'Дніпропетровська');

insert into oblast values(3,3,'Одесська');

insert into oblast values(1,4,'Львівська');

insert into oblast values(2,5,'Донецька');

insert into oblast values(3,6,'Миколаївська');

insert into oblast values(1,7,'Закарпатська');

insert into oblast values(2,8,'Харківська');

insert into oblast values(3,9,'Херсонська');

insert into oblast values(1,10,'Чернівецька');

insert into oblast values(2,11,'Запорізька');

-- Вставляємо контрольні дані в таблицю ‘бази’

insert into baza values(1,1,'Майдан НБ');

insert into baza values(2,7,'Чернiїв НБ');

insert into baza values(3,12,'Яворів НБ');

insert into baza values(4,11,'Есхар НБ');

insert into baza values(5,13,'Берізка НБ');

insert into baza values(6,5,'Проспект НБ');

insert into baza values(7,3,'Паливо НБ');

insert into baza values(8,4,' Хотин НБ');

insert into baza values(8,10,'Міжгір’я НБ');

insert into baza values(9,6,'Запоріжжя НБ');

insert into baza values(10,2,'Вільно НБ');

insert into baza values(11,8,'Микантил НБ');

insert into baza values(11,9,'Бурманськ НБ');

-- Вставляємо контрольні дані в таблицю ‘паливо’

insert into paluvo values(1,'01-10-2012',145,250,333);

insert into paluvo values(2,'02-10-2010',123,321,531);

insert into paluvo values(3,'04-10-2005',455,562,145);

insert into paluvo values(4,'07-11-2007',754,125,645);

insert into paluvo values(5,'18-11-2003',874,985,121);

insert into paluvo values(6,'17-10-2008',158,247,833);

insert into paluvo values(7,'13-10-2009',844,347,175);

insert into paluvo values(8,'17-10-2002',559,577,48);

insert into paluvo values(9,'09-11-2002',891,147,614);

insert into paluvo values(10,'28-11-2001',198,549,178);

insert into paluvo values(11,'04-10-2000',189,277,400);

insert into paluvo values(12,'02-10-2008',151,578,844);

insert into paluvo values(13,'03-10-2007',478,562,237);

Результати виконання завдання

5.3 Завдання 3

Виготовити запити, де відібрати дані для звітів.

Задача 3.1

Виготовити запити для перегляду вмісту таблиць зі всіма даними. Розв'язок задачі

SELECT

region.n_reg , oblast.n_obl, baza.n_b, paluvo.data, paluvo.kilk_m, paluvo.kilk_b, paluvo.kilk_d

FROM

paluvo INNER JOIN baza INNER JOIN oblast INNER JOIN region

ON region.kod_reg = oblast.kod_reg

ON oblast.kod_obl = baza.kod_obl

ON baza.kod_b = paluvo.kod_b;

Результати запиту

Задача 3.2

Побудувати запит про запаси ресурсів на базах протягом останніх 11 років. Додати назву цього родовища.

Розв'язок задачі

SELECT

baza.n_b,

paluvo.kilk_b,

paluvo.kilk_d,

paluvo.data

FROM baza INNER JOIN paluvo

ON baza.kod_b = paluvo.kod_b

WHERE extract(YEAR FROM current_date) < (extract(YEAR FROM paluvo.data) + 11)

GROUP BY n_b, kilk_b, kilk_d ,data ;

Результатизадачі 3.2

Задача 3.3

Виготовити запит з відомостями про родовища: назва регіону, назва області, назва нафтобази, кількість бензину, масла, дизпалива . Вказати, що база бідна, якщо її запаси бензину і масла менше 350 тонн, а дизпалива менше 400 тонн.

Розв'язок задачі

SELECT

region.n_reg, oblast.n_obl, baza.n_b,paluvo.kilk_m,

paluvo.kilk_b, paluvo.kilk_d,

CASE WHEN paluvo.kilk_m<550and paluvo.kilk_b<570 and paluvo.kilk_d<580 THEN 'бідна база' END AS text

FROM

paluvo,baza,oblast,region

WHERE

region.kod_reg = oblast.kod_reg AND

oblast.kod_obl=baza.kod_obl AND

baza.kod_b=paluvo.kod_b

Результати запиту:

Соседние файлы в папке курсовая docx100