Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОБД / лабки / Звіт_ЛР15_бойко.docx
Скачиваний:
0
Добавлен:
27.01.2024
Размер:
508.16 Кб
Скачать

Бойко Євгеній 310-і Лабораторна робота 15

Тема: Реалізація запитів зі з’єднаннями таблиць.

Мета: закріпити навички розроблення запитів до БД з використанням з’єднання таблиць.

Форма звіту – електронний звіт.

Теоретичний матеріал

Внутрішнє з'єднання з'єднує записи двох таблиць (A та B) на основі заданого предикату з'єднання. При цьому обчислюється декартів добуток усіх записів таблиць. Таким чином, усі записи таблиці A буде з'єднано з кожним із записів таблиці B, після чого в результатній таблиці залишаться лише ті записи, які задовольняють предикат з'єднання. Цей тип з'єднання трапляється найчастіше

Приклад явного внутрішнього з'єднання:

SELECT *

FROM Працівник

INNER JOIN Відділ

ON Працівник.КодВідділу = Відділ.КодВідділу

Приклад неявного внутрішнього з'єднання:

SELECT *

FROM Працівник, Відділ

WHERE Працівник.КодВідділу = Відділ.КодВідділу

Внутрішнє з'єднання. JOIN USING

Внутрішнє еквіоб’єднання на основі перелічених однойменних стовпців таблиць. Об'єднуються зазначені колонки з однаковими іменами. До вибірки потрапляють всі рядки, де співпадаючі колонки, зазначені після ключового слова USING мають однакове значення. При різних типах співпадаючих колонок – помилка

Н-д: В таблицю «Актор» виводимо «Назву фільму» за ід_фільму з таблиці «Фільм»:

SELECT Актор_імя, Назва_фільму

FROM Актор

JOIN Фільм USING (іd_фільму)

Внутрішнє з'єднання NATURAL JOIN

Внутрішнє еквіоб’єднання на основі всіх однойменних стовпців таблиць. Об'єднуються колонки з однаковими іменами. До вибірки потрапляють всі рядки, де співпадаючі колонки мають однакове значення. При різних типах співпадаючих колонок – помилка. Особливістю використання NATURAL JOIN полягає в тому, що однойменні стовпці в таблицях стають «загальними». Тому, при використанні таких стовпців можна використовувати псевдоніми таблиць.

Н-Д: З’єднання даних з двух таблиць

SELECT Актор_імя, Назва_фільму

FROM Актор NATURAL JOIN Фільм

Внутрішнє з'єднання. JOIN ON

Внутрішнє еквіоб’єднання на основі вказаної умови. Вказівка умов об'єднань після ключового слова ON. Використання складних конструкцій в умовах об'єднання. Використання логічних виразів в умовах об'єднання

Приклад неявного внутрішнього з'єднання:

SELECT a.Актор_імя, ф.Назва_фільму

FROM Актор а JOIN Фільм ф on a.іd_фільм= ф.іd_фільм

Ліве зовнішнє з'єднання

Результат лівого зовнішнього з'єднання для таблиць А і Б містить всі кортежі з лівої таблиці (А), навіть якщо умова об'єднання не містить збігів з кортежами правої таблиці (Б). Це означає те, що, якщо умова порівняння не знайде записів у таблиці Б, то з'єднання в результаті все ж поверне рядки, але значення з колонок таблиці Б будуть порожніми. Іншими словами, ліве зовнішнє з'єднання повертає всі значення з лівої таблиці і додає значення колонок з правої таблиці або NULL, якщо немає збігу за предикатом з'єднання.

Наприклад, це дозволяє знаходити відділи працівників, але все ж показувати працівника, навіть якщо не існує їхнього відділу. Результат відрізняється від внутрішнього з'єднання тим, що працівники в неіснуючих відділах відфільтровуються.

Приклад лівого зовнішнього з'єднання:

SELECT *

FROM Працівник

LEFT JOIN Відділ

ON Працівник.КодВідділу = Відділ.КодВідділу

Соседние файлы в папке лабки