Hur får jag data från flera tabeller?
En SQL JOIN kombinerar poster från två tabeller.
A JOIN lokaliserar relaterade kolumnvärden i de två tabellerna.
En fråga kan innehålla noll, en eller flera JOIN-åtgärder.
INNER JOIN är samma som JOIN; nyckelordet INNER är valfritt.
Fyra olika typer av JOIN
- (INNER) JOIN: Välj poster som har matchande värden i båda tabellerna.
- FULL (OUTER) JOIN: Väljer alla poster som matchar antingen vänster eller höger tabellposter.
- VÄNSTER (YTRE) JOIN: Välj poster från första (längst till vänster) tabellen med matchande högra tabellposter.
- HÖGER (YTTRE) GÅ MED: Välj poster från den andra (högst till höger) tabellen med matchande vänstra tabellposter.
Obs! Alla INNER- och OUTER-nyckelord är valfria.
Detaljer om de olika JOIN: erna finns på efterföljande handledningssidor.
SQL GÅ MED syntax
Den allmänna syntaxen är
SELECT column-names FROM table-name1 JOIN table-name2 ON column-name1 = column-name2 WHERE condition
Den allmänna syntaxen med INNER är:
SELECT column-names FROM table-name1 INNER JOIN table-name2 ON column-name1 = column-name2 WHERE condition
Obs! Nyckelordet INNER är valfritt: det är både standard och den vanligaste JOIN-åtgärden.
Id
Firs tName
Efternamn
Ort
Land
Telefon
Id
OrderDate
OrderNumber
CustomerId
TotalAmount
SQL JOIN Exempel
I det här exemplet kan det vara bra att använda tabellalias för och kund.
OrderNumber | TotalAmount | Förnamn | Efternamn | Ort | Land |
---|---|---|---|---|---|
542378 | 440,00 | Paul | Henriot | Reims | Frankrike |
542379 | 1863.40 | Karin | Josephs | Münster | Tyskland |
542380 | 1813.00 | Mario | Pontes | Rio de Janeiro | Brasilien |
542381 | 670,80 | Mary | Saveley | Lyon | Frankrike |
542382 | 3730,00 | Pascale | Cartrain | Charleroi | Belgien |
542383 | 1444,80 | Mario | Pontes | Rio de Janeiro | Brasilien |
542384 | 625,20 | Yang | Wang | Bern | Schweiz |
Id
Produktnamn
SupplierId
UnitPrice
Package
IsDiscontinued
Id
OrderId
ProductId
Enhetspris
Kvantitet
Id
OrderDate
OrderNumber
CustomerId
TotalAmount
kvantiteter och priser
O, I och P är tabellalias . Datum är en kolumn Alias.