SQL OUTER JOIN (Svenska)
Sammanfattning: i denna handledning lär du dig hur du använder SQL yttre join inklusive vänster yttre koppling, höger yttre koppling och fullständig yttre koppling.
Om du vill lära dig mer om SQL INNER JOIN, kolla in den i SQL INNER JOIN-självstudien.
Det finns tre typer av OUTER JOIN: vänster yttre koppling, höger yttre fog och full yttre fog. Låt oss undersöka varje typ av koppling mer detaljerat.
SQL OUTER JOIN – vänster yttre koppling
SQL vänster yttre koppling kallas också SQL vänster koppling. Anta att vi vill gå med i två tabeller: A och B. SQL vänster yttre koppling returnerar alla rader i vänster tabell (A) och alla matchande rader som finns i höger tabell (B). Det betyder att resultatet av SQL vänster koppling alltid innehåller raderna i den vänstra tabellen.
Följande illustrerar SQL vänster yttre syntax för att gå med två tabeller: tabell_A och tabell_B:
1
2
3
4
|
VÄLJ kolumn1, kolumn2 …
FRÅN table_A
VÄNSTER JOIN table_B ON join_condition
WHERE row_condition
|
SQL OUTER JOIN – vänster yttre kopplingsexempel
Följande fråga väljer alla kunder och deras beställningar:
1
2
3
4
5
6
|
VÄLJ c.customerid,
c.companyName,
orderid
FRÅN kunder c
VÄNSTER JOIN-beställningar o PÅ o.customerid = c .customerid
BESTÄLLA PÅ orderord
|
Alla rader i kundtabellen visas. Om det inte finns någon matchande rad i ordertabellen för raden i kundtabellen, fylls orderidkolumnen i ordertabellen med NULL-värden.
Vi kan använda Venn-diagram för att visualisera hur SQL VÄNSTER OUTER JOIN fungerar.
SQL OUTER JOIN – höger yttre koppling
SQL höger yttre koppling returnerar alla rader i rätt tabell och alla matchande rader i den vänstra tabellen. Syntaxen för den yttre SQL-anslutningen till höger är som följer:
1
2
3
4
|
VÄLJ kolumn1, kolumn2 …
FRÅN table_A
RIGHT JOIN table_B ON join_condition
WHERE row_condition
|
SQL höger yttre koppling kallas också SQL rätt anslutning.
SQL OUTER JOIN – höger yttre kopplingsexempel
Följande exempel visar SQL höger yttre koppling:
1
2
3
4
5
6
|
VÄLJ c.customerid,
c.företagsnamn,
orderi d
FRÅN kunder c
RIGHT JOIN-beställningar o PÅ o.customerid = c.customerid
ORDER BY orderid
|
Frågan returnerar alla rader i ordertabellen och alla matchande rader som finns i kundtabellen.
Följande Venn-diagram illustrerar hur SQL höger yttre koppling fungerar:
SQL OUTER JOIN – fullständig yttre koppling
Syntaxen för SQL full yttre koppling är som följer:
1
2
3
4
|
VÄLJ kolumn1, kolumn2 …
FRÅN table_A
FULL OUTER JOIN table_B ON join_condition
WHERE row_condition
|
SQL fullständig yttre koppling returnerar:
- all ro ws i den vänstra tabellen tabell_A.
- alla rader i den högra tabellen tabell_B.
- och alla matchande rader i båda tabellerna.
Någon databas hanteringssystem stöder inte syntax för fullständig yttre anslutning till SQL, t.ex. MySQL. Eftersom SQL full yttre koppling returnerar en resultatsats som är ett kombinerat resultat av både SQL vänster koppling och SQL höger koppling.Därför kan du enkelt emulera SQL fullständig yttre koppling med SQL vänster koppling och SQL höger koppling med UNION-operatören enligt följande:
SQL OUTER JOIN – fullständig yttre kopplingsexempel
Följande fråga visar SQL fullständiga yttre koppling:
1
2
3
4
5
6
|
VÄLJ c.customerid,
c.företagsnamn,
orderid
FRÅN kunder c
FULL YTTRE JOIN-beställningar o PÅ o.customerid = c.customerid
BESTÄLLA PÅ orderord
|
Följande Venn-diagram illustrerar hur SQL full yttre koppling fungerar:
I denna handledning har du lärt dig om olika SQL OUTER JOIN inklusive SQL left join, SQL right gå med och SQL fullständig yttre koppling.
- Hjälpte den här handledningen?
- Ja Nej