FULL OUTER JOIN

Ключовата дума FULL OUTER JOIN връща всички записи, когато е налице съвпадение в записите за таблиците вляво (table1) или дясно (table2).
Забележка: FULL OUTER JOIN може потенциално да върне много големи резултати!

Синтаксис на FULL OUTER JOIN

SQL FULL OUTER JOIN

Демо база данни

В този урок ще използваме добре известната примерна база данни Northwind. По-долу има селекция от таблицата „Customers“:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico

И селекция от таблицата „Orders“:

OrderID CustomerID EmployeeID OrderDate ShipperID
10308 2 7 1996-09-18 3
10309 37 3 1996-09-19 1
10310 77 8 1996-09-20 2

SQL FULL OUTER JOIN Пример

Следната SQL заявка избира всички Customers(клиенти) и всички Orders(поръчки):

Изборът от набор от резултати може да изглежда така:

CustomerName OrderID
Alfreds Futterkiste  
Ana Trujillo Emparedados y helados 10308
Antonio Moreno Taquería 10365
  10382
  10351

Забележка: Ключовата дума FULL OUTER JOIN връща всички редове от лявата таблица (Customers) и всички редове от дясната таблица (Orders). Ако има редове в „Customers“, които нямат съвпадения в „Orders“ или ако в „Orders“ има редове, които нямат съвпадения в „Customers“, тези редове ще бъдат изброени също.