Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Звіт до лабораторної роботи №2
«Створення схеми БД»
з курсу «Бази даних»
Виконала:
Львів 2010
Завдання лабораторної роботи виконувати в призначеній предметній області. Змістовне призначення запитів визначати самостійно виходячи з логіки предметної області.
Створити запити типу:
• SELECT на базі однієї таблиці з використанням сортування, накладенням умов зі зв’язками OR та AND.
• SELECT з виводом обчислюваних полів (виразів) в колонках результату.
• SELECT на базі кількох таблиць з використанням сортування, накладенням умов зі зв’язками OR та AND.
• SELECT на базі кількох таблиць з типом поєднання Outer Join.
• SELECT з використанням операторів Like, Between, In, Exists, All, Any.
• SELECT з використанням підсумовування та групування.
• SELECT з використанням під-запитів в частині Where.
• SELECT з використанням під-запитів в частині From.
• ієрархічний SELECT запит.
• SELECT запит типу CrossTab.
• UPDATE на базі однієї таблиці.
• UPDATE на базі кількох таблиць.
• Append (INSERT) для додавання записів з явно вказаними значеннями.
• Append (INSERT) для додавання записів з інших таблиць.
• DELETE для видалення всіх даних з таблиці.
• DELETE для видалення вибраних записів таблиці.
SQl – запити:
SELECT на базі однієї таблиці з використанням сортування, накладенням умов зі зв’язками OR та AND.
SELECT * from Lease where initial_date BETWEEN '1/11/2009' AND '8/11/2009 23:59:59';
SELECT з виводом обчислюваних полів (виразів) в колонках результату.
SELECT price*7 from Type_accomodation where id_type LIKE 1 or id_type LIKE 4;
SELECT на базі кількох таблиць з використанням сортування, накладенням умов зі зв’язками OR та AND.
SELECT [name_firm], director from Occupier, Payment where address_firm LIKE 'Harkiv' or amount = 222 ;
SELECT з використанням операторів Like, Between, In, Exists, All, Any.
SELECT * from Lease where initial_date BETWEEN '1/11/2009' AND '8/11/2009 23:59:59';
SELECT id_accomodation from Accommodation where address LIKE 'Lviv, Zelena%';
SELECT [id_lease], [id_accomodation], id_occupier from Lease where EXISTS (SELECT * where id_occupier<5 );
SELECT [id_occupier], name_firm from Occupier where id_occupier in (3,4,5);
SELECT [id_occupier], name_firm from Occupier where id_occupier <>any (select id_occupier from Lease);
SELECT id_accomodation from Lease where id_lease =all (select id_occupier from Lease);
SELECT з використанням підсумовування та групування.
SELECT id_accomodation, count(id_accomodation)as kilkist from Lease group by id_accomodation order by id_accomodation;
SELECT з використанням під-запитів в частині WHERE.
SELECT id_accomodation from Lease where id_occupier in (select id_lease from Lease where id_lease <3);
SELECT з використанням під-запитів в частині FROM.
select Lease.id_lease from (select id_lease from Payment where )
SELECT на базі кількох таблиць з типом поєднання Outer Join.
Select distinct Lease.id_occupier, Occupier.name_firm, Occupier.director from Occupier right outer join Lease on Lease.id_occupier = Occupier.id_occupier;
UPDATE на базі однієї таблиці.
update Occupier set address_firm = 'Ternopil' where name_firm like 'TR';
UPDATE на базі кількох таблиць.
update Accommodation set address = 'Khstfui' where id_accomodation =(select id_accomodation from Lease where id_lease = 6 );
Append (INSERT) для додавання записів з явно вказаними значеннями.
insert into Type_accomodation values (8, 'komorka', 23);
DELETE для видалення всіх даних з таблиці.
delete from Lease;
DELETE для видалення вибраних записів таблиці.
delete from Payment where id_payment = 3;
Висновок: під час виконання лабораторної роботи я навчилась маніпулювати данними на основі SQL-запитів.