Fra Wikipedia, den frie encyklopædi
JOIN
er en SQL -specifikation som benyttes sammen med SELECT
for at returner et resultat af optegnelser fra flere tabeller . Den bruges når data fra hovedtabellen skal kombineres med data fra andre tabeller.
INNER JOIN
eller bare JOIN
– returner kun kombineret data.
LEFT JOIN
– returnerer alle data fra hovedtabellen og kombinerer dem med data fra den anden der det er mulig.
RIGHT JOIN
– returnerer alle data fra den anden tabellen og kombinerer dem med data fra hovedtabellen der det er mulig.
En JOIN
-forespørgsel ser således ud:
SELECT tabell1 . kolonne2 , tabell2 . *
FROM tabell1
JOIN tabell2 ON tabell1 . kolonne1 = tabell2 . kolonne
Tabellen personer ser således ud:
navn
bosted
Ola Nordmann
Oslo
Navn Navnesen
Bergen
Jens Jensen
Tromsø
Kari Nordmann
Oslo
Tabellen byer ser således ud:
bynavn
fylke
Oslo
Oslo
Bergen
Hordaland
Trondheim
Sør-Trøndelag
Søgning
Resultat
SELECT *
FROM personer
INNER JOIN byer ON personer . bosted = byer . bynavn
navn
bosted
bynavn
fylke
Ola Nordmann
Oslo
Oslo
Oslo
Navn Navnesen
Bergen
Bergen
Hordaland
Kari Nordmann
Oslo
Oslo
Oslo
SELECT *
FROM personer
LEFT JOIN byer ON personer . bosted = byer . bynavn
navn
bosted
bynavn
fylke
Ola Nordmann
Oslo
Oslo
Oslo
Navn Navnesen
Bergen
Bergen
Hordaland
Jens Jensen
Tromsø
NULL
Kari Nordmann
Oslo
Oslo
Oslo
SELECT *
FROM personer
RIGHT JOIN byer ON personer . bosted = byer . bynavn
navn
bosted
bynavn
fylke
Ola Nordmann
Oslo
Oslo
Oslo
Kari Nordmann
Oslo
Oslo
Oslo
Navn Navnesen
Bergen
Bergen
Hordaland
NULL
Trondheim
Sør-Trøndelag