Join (SQL)

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.

JOIN-specifikationer

redigér
  • 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.

Grundlæggende syntaks

redigér

En JOIN-forespørgsel ser således ud:

SELECT tabell1.kolonne2, tabell2.*FROM tabell1JOIN tabell2 ON tabell1.kolonne1 = tabell2.kolonne

Eksempler

redigér

Tabellen personer ser således ud:

navnbosted
Ola NordmannOslo
Navn NavnesenBergen
Jens JensenTromsø
Kari NordmannOslo

Tabellen byer ser således ud:

bynavnfylke
OsloOslo
BergenHordaland
TrondheimSør-Trøndelag
SøgningResultat
SELECT *FROM personerINNER JOIN byer ON personer.bosted = byer.bynavn
navnbostedbynavnfylke
Ola NordmannOsloOsloOslo
Navn NavnesenBergenBergenHordaland
Kari NordmannOsloOsloOslo
SELECT *FROM personerLEFT JOIN byer ON personer.bosted = byer.bynavn
navnbostedbynavnfylke
Ola NordmannOsloOsloOslo
Navn NavnesenBergenBergenHordaland
Jens JensenTromsøNULL
Kari NordmannOsloOsloOslo
SELECT *FROM personerRIGHT JOIN byer ON personer.bosted = byer.bynavn
navnbostedbynavnfylke
Ola NordmannOsloOsloOslo
Kari NordmannOsloOsloOslo
Navn NavnesenBergenBergenHordaland
NULLTrondheimSør-Trøndelag