SQL

CROSS JOIN

by Andrea Spera

Le query CROSS JOIN in SQL restituiscono il prodotto cartesiano di due tabelle, combinando ogni riga della prima tabella con ogni riga della seconda. Questo tipo di join è utile quando si vogliono creare strutture fisse o combinazioni di dati non correlate.
In questo esempio, creiamo una struttura che, per ogni prodotto della tabella Prodotti, vengano elencati i tipi di ordine dalla tabella TipoOrdine.
Prodotti
ID Descrizione
1 Kit guarnizioni
2 Olio idraulico
3 Filtro
4 Pignone
TipoOrdine
ID TipoOrdine
1 Stock
2 Reintegro
3 Standard
4 Urgente
Codice
SELECT P.Descrizione AS Prodotto, T.TipoOrdine
FROM Prodotti AS P
CROSS JOIN TipoOrdine AS T
ORDER BY P.Descrizione;
Risultato della query
Prodotto TipoOrdine
Filtro Stock
Filtro Reintegro
Filtro Standard
Filtro Urgente
Kit guarnizioni Stock
Kit guarnizioni Reintegro
Kit guarnizioni Standard
Kit guarnizioni Urgente
Olio idraulico Stock
Olio idraulico Reintegro
Olio idraulico Standard
Olio idraulico Urgente
Pignone Stock
Pignone Reintegro
Pignone Standard
Pignone Urgente