Riferimento rapido

Cheat Sheet sulle Join SQL

Guida rapida ai join di tabelle SQL: INNER JOIN, LEFT JOIN, RIGHT JOIN e FULL OUTER JOIN con sintassi e logica di Venn.

· Pubblicato

Esempio di sintassi

SELECT order_items.id, orders.order_date, order_items.price
FROM order_items
LEFT OUTER JOIN orders
  ON order_items.order_id = orders.id;

Le operazioni di Join combinano le righe di due o più tabelle in base a una colonna correlata tra di esse.

Visualizzazione dei Join

SELECT * FROM `A` INNER JOIN `B`
┌────────┐
│ A  ┌───┼────┐
│    │ ∩ │    │
└────┼───┘  B │
     └────────┘
Tipo di Join Dati inclusi Descrizione
INNER JOIN ∩ Restituisce i record con valori corrispondenti in entrambe le tabelle
LEFT OUTER JOIN A + ∩ Restituisce tutti i record della tabella A e quelli corrispondenti dalla B
RIGHT OUTER JOIN ∩ + B Restituisce tutti i record della tabella B e quelli corrispondenti dalla A
FULL OUTER JOIN A + ∩ + B Restituisce tutti i record quando c'è corrispondenza nella tabella sinistra o destra

Varianti di Join e filtri

Left Join escludendo l'intersezione

SELECT * FROM A
LEFT JOIN B ON A.key = B.key
WHERE B.key IS NULL;

Right Join escludendo l'intersezione

SELECT * FROM A
RIGHT JOIN B ON A.key = B.key
WHERE A.key IS NULL;

Full Outer Join escludendo l'intersezione

SELECT * FROM A
FULL OUTER JOIN B ON A.key = B.key
WHERE A.key IS NULL OR B.key IS NULL;

Argomenti correlati