Huvudskillnad: Anslutningar i SQL utförs för att kombinera data i två olika tabeller. Ett Inner Join är ett villkor som resulterar i raderna som uppfyller "var" -klausulen i "alla tabellerna"; medan ett yttre samspel är ett villkor som resulterar i de rader som uppfyller "var" -klausulen i "minst en av tabellerna".
Vid genomförandet av länkarna skapas de tillfälliga tabellerna, de är baserade på kolumner. Det borde alltid finnas två bord, för anslutningsförhållandena. Dessa förhållanden sammanfogar sedan de olika komponenterna i ett bord med de andra komponenterna och ger upphov till ett helt nytt bord. Målet med dessa tabeller är att extrahera den meningsfulla och nödvändiga data eller information. Beroende på förhållandena finns det två typer av fogar, inre och yttre fogar.
SQL INNER JOIN Syntax:
VÄLJ kolumnnamn (er)
FRÅN tabell1
INNER JOIN table2
ON table1.column_name = table2.column_name;
INNER JOIN-nyckelordet väljer alla rader från båda tabellerna så länge det finns en matchning mellan kolumnerna i båda tabellerna.
De inre föreningarna beror på valet av databasdesign och egenskaper. Följaktligen används dessa inre föreningar i Equi-Joins och Natural Joins. I Equi Join är det en specifik typ av jämförelse som används för att utjämna de två givna tabellerna. Därför använder denna tabell likpredikatet. Den naturliga föreningen är en typ av Equi-medlemskap.
Syntax för Equi Join är som följer:
S ELECT *
FRÅN tabell 1, tabell 2
VAR tabell1.coloumn_name = table2.coloumn_name;
Om kolumnerna i ett equi-join har samma namn, tillhandahåller respektive SQL-version en valfri stenografi notation som kan uttryckas av USING-konstruktionen som:
VÄLJ *
FRÅN tabell1 INNER JOIN tabell2 ANVÄNDNING (kolumnnamn);
Syntax för Natural Join är som följer:
VÄLJ *
FRÅN tabell1 NATURLIGT JORDBORD2;
En "yttre anslutning" behöver inte matchningsförhållandena för posterna. Denna anslutningsvillkor upprätthåller alla andra poster, förutom de icke-matchade dokumenten. Denna anslutning distribueras vidare i vänstra, högra och fullständiga yttre anslutningsförhållanden som implementeras enligt de önskade tabellvillkoren och attributen.
Vänster Outer Join
LEFT JOIN-nyckelordet returnerar alla rader från det vänstra bordet (tabell1), med matchande rader i den rätta tabellen (tabell2). Det resulterar "NULL" i höger sida när det inte finns någon match.
Syntaxen för vänster yttre sammansättning följer:
VÄLJ kolumnnamn (er)
FRÅN tabell1
VÄNSTER UTSLÄPP bord2
ON table1.column_name = table2.column_name;
Höger yttre gå med
RIGHT JOIN-nyckelordet returnerar alla rader från det högra tabellen (tabell2), med matchande rader i det vänstra tabellen (tabell1). Resultatet är NULL i vänster sida när det inte finns någon matchning.
Syntaxen för Right Outer Join följer:
VÄLJ kolumnnamn (er)
FRÅN tabell1
HÖGER YTTRE JOIN-bordet2
ON table1.column_name = table2.column_name;
Fullständig yttre anslutning
FULL YTTERLIGA JOIN-nyckelordet returnerar alla rader från det vänstra bordet (tabell1) och höger tabell (tabell2). FULL YTRE JOIN-nyckelordet kombinerar både resultatet av LEFT och RIGHT-anslutningarna.
Syntaxen för Full Outer Join är:
VÄLJ kolumnnamn (er)
FRÅN tabell1
FULL YTTRE JOIN bord2
ON table1.column_name = table2.column_name;
Jämförelse mellan Inner Join och Outer Join:
Inre koppling | Yttre gå med | |
Grundläggande funktion | Innerförbindelser används i grunden för att hitta matchande rader mellan 2 tabeller. | Yttre föreningen behåller raderna i endera tabellen eller båda tabellerna. |
Förekomsten av gemensamma variabler | Här måste den gemensamma variabeln vara obligatorisk i båda tabellerna. | Här är variabeln beroende av endast den första tabellen som eventuellt kan vara närvarande i den andra tabellen. |
Returer | Innerföreningen kommer bara att returnera rader där det finns en matchning baserat på anslutningsprotikatet. | Yttre deltagare kommer att returnera alla raderna, oavsett om de är matchbaserade eller inte matchade, baserat på anslutningsprotikatet. |
Brukade | Den används endast för att se posterna endast när dokumenten är närvarande på båda tabellerna. | Den används för att visa alla poster i bara ett bord. |
Gäller i | De gäller i: Equi-Join och Naturligt gå med | De är tillämpliga som: Vänster Outer Join Höger yttre gå med Fullständig yttre anslutning |