TOP

SQL FULL OUTER JOIN Słowo kluczowe

SQL FULL OUTER JOIN Opis

Słowo kluczowe FULL OUTER JOIN zwraca wszystkie rekordy, jeśli istnieje dopasowanie w lewym (tabela1) lub prawym (tabela2) rekordzie tabeli.


Instrukcje FULL OUTER JOIN i FULL JOIN są takie same.

FULL OUTER JOIN Składnia

SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name
WHERE condition

SQL FULL JOIN

Baza demonstracyjna

W tym samouczku użyjemy słynnej przykładowej bazy danych „Northwind”.

Poniżej znajduje się przykład z tabeli „Customers” („Klienci”):

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

Oraz przykład z tabeli „Orders” („Zamówienia”):

ProductIDOrderIDCustomerIDEmployeeIDOrderDateShipperID
1102489051996-07-043
2102498161996-07-051
3102503441996-07-082
4102518431996-07-081
5102527641996-07-092

SQL FULL OUTER JOIN Przykład

Poniższa instrukcja SQL wybiera wszystkich klientów i wszystkie zamówienia:

Run SQLSELECT Customers.CustomerName, Orders.OrderID 
FROM Customers 
FULL OUTER JOIN Orders ON Customers.CustomerID = Orders.CustomerID 
ORDER BY Customers.CustomerName

Przykładowy zestaw wyników może wyglądać następująco:

CustomerName OrderID
Null 10309
Null 10310
Alfreds Futterkiste Null
Ana Trujillo Emparedados y helados 10308
Antonio Moreno Taquería Null
Słowo kluczowe FULL OUTER JOIN zwraca wszystkie pasujące rekordy z obu tabel, niezależnie od tego, czy druga tabela pasuje, czy nie. Jeśli więc w „Customers” („Klienci”) znajdują się wiersze, które nie mają dopasowań w „Orders” („Zamówienia”) lub jeśli w „Zamówieniach” znajdują się wiersze, które nie mają dopasowań w „Klientach”, te wiersze są również zostaną wymienione.