martedì 23 dicembre 2008

Sql: INNER JOIN

Potrebbe tornare utile estrarre dei dati da 2 o + tabelle relazionate tra loro.

Il comando INNER JOIN, serve appunto per restituire le righe delle tabelle se c'è un legame, altrimenti non le mostra.

Sintassi (per MS SQL)

SELECT
*
FROM
tabella1
INNER JOIN
tabella2
ON
tabella1.campochiave = tabella2.campochiave

Nel caso in cui volessimo estrarre determinati campi da entrambe le tabelle, un modo per procedere è il seguente:

SELECT
a.campo1, a.campo2, a.campo3, b.campo1, b.campo2, b.campo3
FROM
tabella1 a
INNER JOIN
tabella2 b
ON
a.campochiave=b.campochiave

Nel caso volessimo fare l'INNER JOIN su 3, 4, 5 tabelle, la sintassi è:

SELECT
a.campo1, a.campo2, b.campo1, c.campo1, d.campo2, e.campo2
FROM
tabella1 a
INNER JOIN
tabella2 b
ON
a.campochiave=b.campochiave

INNER JOIN
tabella3 c
ON
a.campochiave=c.campochiave

INNER JOIN
tabella4 d
ON
a.campochiave=d.campochiave

INNER JOIN
tabella5 e
ON
a.campochiave=e.campochiave

Buona estrazione!

Nessun commento:

Posta un commento