SQL OUTER JOINs Преглед на всички видове - IONOS
В a SQL ПРИСЪЕДИНЯВАНЕ това е операция за заявка, която свързва няколко таблици от релационна база данни и извежда техните записи от данни (кортежи), филтрирани според условие за избор, дефинирано от потребителя.

- Подвид на ВЪНШНОТО ПРИСЪЕДИНЯВАНЕ
- SQL ЛЯВО ВЪНШНО ПРИСЪЕДИНЯВАНЕ
- SQL ПРАВО ВЪНШНО ПРИСЪЕДИНЯВАНЕ
- SQL ПЪЛНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ
- ЕСТЕСТВЕНО ВЪНШНО ПРИСЪЕДИНЕНИЕ
- ВЪНШНИ ПРИСЪЕДИНЯВАНИЯ на практика
Най-често срещаният тип JOIN на модела на релационна база данни е SQL INNER JOIN. На практика, например, потребителите използват ВЪТРЕШНИ ПРИСЪЕДИНЯВАНИЯ, когато две таблици на база данни трябва да бъдат свързани с едни и същи колони. Всеки запис на данни в една таблица се обединява със съответния запис на данни в другата таблица. Записите от данни, за които системата за управление на базата данни (СУБД) не намира съвпадение в другата таблица, са скрити.
A SQL ВЪНШНО ПРИСЪЕДИНЯВАНЕ обаче не само извежда записите с данни от двете таблици, които отговарят на условието за избор (например равенството на стойностите в две колони), но и всички останали кортежи на едната или другата таблица.
Във връзка с посоката на четене на синтаксиса на SQL се говори за лява и дясна таблица. Съответните операции се именуват съответно ЛЯВО ВЪНШНО ПРИСЪЕДИНЯВАНЕ и ДЯСНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ. Ако искате да изведете всички записи на данни в лявата и дясната таблица в допълнение към записите на данни, които отговарят на условието за избор в контекста на заявките към база данни, това е едно ПЪЛНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ.
Принципът на различните типове JOIN може да бъде илюстриран много добре с помощта на зададени диаграми:
Представяне на ВЪТРЕШНО СЪЕДИНЕНИЕ и ВЪНШНО СЪЕДИНЕНИЕ под формата на диаграми на комплекти: Цветните области съответстват на резултата от съответното СЪЕДИНЕНИЕ на набори А и Б. Резултатният набор на ВЪТРЕШНОТО СЪЕДИНЕНИЕ е пресечната точка на А и В (тъмно синьо). Наборът от резултати на ВЪНШНО ПРИСЪЕДИНЯВАНЕ включва пресичанията между A и B (тъмно синьо) и останалото количество (светло синьо) на A (LEFT JOIN), B (RIGHT JOIN) или A и B (FULL JOIN).
Подвид на ВЪНШНАТА ПРИСЪЕДИНЕНИЕ
Всяко ВЪНШНО ПРИСЪЕДИНЯВАНЕ се изпълнява като ЛЯВО ВЪНШНО ПРИСЪЕДИНЕНИЕ, ДЯСНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ или ПЪЛНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ.
Ключовата дума OUTER не е задължителна в синтаксиса на SQL. По правило потребителите използват съкратената нотация НАЛЯВО СЪЕДИНЯВАНЕ, НАДЯСНО ПРИСЪЕДИНЯВАНЕ и ПЪЛНО СЪЕДИНЕНИЕ.
Ние илюстрираме как работят ВЪНШНИ ПРИСЪЕДИНЕНИЯ, използвайки таблиците на базата данни "служители" и "kfz".
Таблица: служители
| 1 | Шмит | Удо | 3 |
| 2 | Мюлер | wolfgang | 1 |
| 3 | Майер | Гюнтер | 1 |
| 4-ти | Чудесно | Хелмут | 2 |
| 5 | Рибар | Хюго | НУЛА |
Таблицата „служители“ включва собственото и фамилното име на служителите на фиктивна компания, както и идентификационния номер на назначения служебен автомобил (kfz_id). Първичният ключ на таблицата е последователен идентификатор на служител (m_id). Служителят с ID 5 (Hugo Fischer) все още не е назначен за служебен автомобил. Следователно клетката на съответната колона съдържа такава Нулева стойност.
Нулевата стойност NULL е стойност, която представлява липсата на стойност. Не отговаря на числовата стойност 0.