UNION e UNION ALL

Impila le righe di due query in un unico risultato. UNION rimuove le ripetizioni; UNION ALL le mantiene.

Sintassi

SELECT … UNION SELECT …;
SELECT … UNION ALL SELECT …;
  • Entrambe le query devono restituire lo stesso numero di colonne, con tipi compatibili.

Esempio

SELECT city FROM customers UNION SELECT category FROM products;

Ogni città e ogni categoria di prodotto, una volta sola ciascuna.

Tabelle usate: customers, products. Provalo in una lezione qui sotto.

Errori comuni

  • I nomi delle colonne vengono dalla prima query. Dai loro gli alias lì.
  • UNION è più lento di UNION ALL perché deve rimuovere i duplicati. Usa UNION ALL quando le ripetizioni vanno bene.

Esercitati