SQL OUTER JOINs Преглед на всички видове - IONOS

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

преглед

  1. Подвид на ВЪНШНОТО ПРИСЪЕДИНЯВАНЕ
    1. SQL ЛЯВО ВЪНШНО ПРИСЪЕДИНЯВАНЕ
    2. SQL ПРАВО ВЪНШНО ПРИСЪЕДИНЯВАНЕ
    3. SQL ПЪЛНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ
    4. ЕСТЕСТВЕНО ВЪНШНО ПРИСЪЕДИНЕНИЕ
  2. ВЪНШНИ ПРИСЪЕДИНЯВАНИЯ на практика

Най-често срещаният тип JOIN на модела на релационна база данни е SQL INNER JOIN. На практика, например, потребителите използват ВЪТРЕШНИ ПРИСЪЕДИНЯВАНИЯ, когато две таблици на база данни трябва да бъдат свързани с едни и същи колони. Всеки запис на данни в една таблица се обединява със съответния запис на данни в другата таблица. Записите от данни, за които системата за управление на базата данни (СУБД) не намира съвпадение в другата таблица, са скрити.

A SQL ВЪНШНО ПРИСЪЕДИНЯВАНЕ обаче не само извежда записите с данни от двете таблици, които отговарят на условието за избор (например равенството на стойностите в две колони), но и всички останали кортежи на едната или другата таблица.

Във връзка с посоката на четене на синтаксиса на SQL се говори за лява и дясна таблица. Съответните операции се именуват съответно ЛЯВО ВЪНШНО ПРИСЪЕДИНЯВАНЕ и ДЯСНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ. Ако искате да изведете всички записи на данни в лявата и дясната таблица в допълнение към записите на данни, които отговарят на условието за избор в контекста на заявките към база данни, това е едно ПЪЛНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ.

Принципът на различните типове JOIN може да бъде илюстриран много добре с помощта на зададени диаграми:

Представяне на ВЪТРЕШНО СЪЕДИНЕНИЕ и ВЪНШНО СЪЕДИНЕНИЕ под формата на диаграми на комплекти: Цветните области съответстват на резултата от съответното СЪЕДИНЕНИЕ на набори А и Б. Резултатният набор на ВЪТРЕШНОТО СЪЕДИНЕНИЕ е пресечната точка на А и В (тъмно синьо). Наборът от резултати на ВЪНШНО ПРИСЪЕДИНЯВАНЕ включва пресичанията между A и B (тъмно синьо) и останалото количество (светло синьо) на A (LEFT JOIN), B (RIGHT JOIN) или A и B (FULL JOIN).

Подвид на ВЪНШНАТА ПРИСЪЕДИНЕНИЕ

Всяко ВЪНШНО ПРИСЪЕДИНЯВАНЕ се изпълнява като ЛЯВО ВЪНШНО ПРИСЪЕДИНЕНИЕ, ДЯСНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ или ПЪЛНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ.

Ключовата дума OUTER не е задължителна в синтаксиса на SQL. По правило потребителите използват съкратената нотация НАЛЯВО СЪЕДИНЯВАНЕ, НАДЯСНО ПРИСЪЕДИНЯВАНЕ и ПЪЛНО СЪЕДИНЕНИЕ.

Ние илюстрираме как работят ВЪНШНИ ПРИСЪЕДИНЕНИЯ, използвайки таблиците на базата данни "служители" и "kfz".

Таблица: служители

m_id фамилия собствено име vehicle_id
1 Шмит Удо 3
2 Мюлер wolfgang 1
3 Майер Гюнтер 1
4-ти Чудесно Хелмут 2
5 Рибар Хюго НУЛА

Таблицата „служители“ включва собственото и фамилното име на служителите на фиктивна компания, както и идентификационния номер на назначения служебен автомобил (kfz_id). Първичният ключ на таблицата е последователен идентификатор на служител (m_id). Служителят с ID 5 (Hugo Fischer) все още не е назначен за служебен автомобил. Следователно клетката на съответната колона съдържа такава Нулева стойност.

Нулевата стойност NULL е стойност, която представлява липсата на стойност. Не отговаря на числовата стойност 0.