Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА"
ІНСТИТУТ ПІСЛЯДИПЛОМНОЇ ОСВІТИ
/
ЗВІТ ДО ЛАБОРАТОРНОЇ РОБОТИ №4
на тему:
«Основні інструкції мови SQL. Багатотабличні запити на вибірку»
з курсу:
"Бази даних"
Львів – 2014
Мета: Вивчення основних принципів та типів об’єднання у багатотабличних запитах на вибірку.
Хід роботи
Приклад 1. Запит до навчальної бази даних, який повертає для усіх операцій купівлі-продажу на суму біль 1000, ім’я замовника, розміщення замовника, суму операції купівлі-продажу та її дату.
SELECT
cus.cname,
cus.city,
ord.amt,
ord.odate
FROM Customers cus
JOIN Orders ord
ON cus.cnum = ord.cnum
WHERE
ord.amt > 1000
Результатом зображено на рис. 1:
/
Рис. 1. Запит до прикладу 1
Приклад 2. Запит до навчальної бази даних, який повертає для усіх операцій купівлі-продажу на суму біль 1000, ім’я замовника, розміщення замовника, суму операції купівлі-продажу та її дату. Умову об’єднання вказано у виразі WHERE.
SELECT
cus.cname,
cus.city,
ord.amt,
ord.odate
FROM Customers cus, Orders ord
WHERE
ord.amt > 1000
AND cus.cnum = ord.cnum
Результатом зображено на рис. 2:
/
Рис. 2. Запит до прикладу 2
Приклад 3. Запит до навчальної бази даних, який повертає дані про усіх продавців та проведені ними операції-купівлі продажу. Продавці, котрі не провели жодної операції купівлі продажу теж потраплять у список вибірки. (Для того, щоб спостерігати відмінності між результатами наведеного нижче скрипта та скрипта із застосуванням операції внутрішнього об’єднання рекомендується у таблицю Salers додати нового продавця).
SELECT
sal.sname,
sal.comm,
ord.amt,
ord.odate
FROM Salers sal
LEFT JOIN Orders ord
ON sal.snum = ord.snum
Результатом зображено на рис. 3:
/
Рис. 3. Запит до прикладу 3
Приклад 4. Запит до навчальної бази даних, який повертає дані про операції купівлі-продажу проведені продавцем із замовниками, які йому не призначені.
SELECT
cus.cname,
ord.amt,
ord.odate
FROM Customers cus
JOIN Orders ord
ON cus.cnum = ord.cnum
AND cus.snum != ord.snum
Результатом зображено на рис. 4:
/
Рис. 4. Запит до прикладу 4
Приклад 5. Запит до навчальної бази даних, що для усіх проведених операцій купівлі-продажу повертає дані про продавця, покупця та суму операції.
SELECT
sal.sname,
ord.amt,
cus.cname
FROM Salers sal
JOIN Orders ord
ON sal.snum = ord.snum
JOIN Customers cus
ON ord.cnum = cus.cnum
Результатом зображено на рис. 5:
/
Рис. 5. Запит до прикладу 5
Висновки:
На даній лабораторній роботі я вивчив основні принципи та типи об’єднання у багатотабличних запитах на вибірку.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!