Hopp til innhold

Join (SQL)

Fra Wikipedia, den frie encyklopedi
Sideversjon per 8. sep. 2010 kl. 08:49 av VolkovBot (diskusjon | bidrag) (robot endrer: ru:Join (SQL))

JOIN er en SQL-spesifikasjon som benyttes sammen med SELECT for å returnere et resultatsett av opptegnelser fra flere tabeller. Den brukes når man sammen med rader fra hovedtabellen skal kombinere rader fra andre.

JOIN-spesifikasjoner

  • INNER JOIN eller bare JOIN - returnerer kun kombinerte rader.
  • LEFT JOIN - returnerer alle radene fra hovedtabellen og kombinerer dem med rader fra den andre der det er mulig.
  • RIGHT JOIN - returnerer alle radene fra den andre tabellen og kombinerer dem med rader fra hovedtabellen der det er mulig.

Grunnleggende syntaks

En JOIN-spørring ser slik ut:

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

Eksempler

Tabellen personer ser slik ut:

navn bosted
Ola Nordmann Oslo
Navn Navnesen Bergen
Jens Jensen Tromsø
Kari Nordmann Oslo

Tabellen byer ser slik ut:

bynavn fylke
Oslo Oslo
Bergen Hordaland
Trondheim Sør-Trøndelag
Spørring Returnerer
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