A un livello di definizione rigoroso, non è possibile. Come mai? Perché la definizione di un prodotto cartesiano è esattamente ciò che descrivi (il termine "unione cartesiana" non è usato spesso ma è sinonimo di "prodotto cartesiano"). Pertanto, qualsiasi metodo utilizzato implementa questa funzionalità. Normalmente questa funzionalità viene implementata utilizzando CROSS JOIN
(e lo ammetto con riluttanza, a volte usando ,
).
Potresti dire "aggiungi 1 a un numero senza fare + 1
". Arriva qualcun altro e dice "usa + 2 - 1
". Bene, questo è aggiungerne uno, ma usando solo due operazioni anziché una.
Se vuoi un prodotto cartesiano ma non vuoi utilizzare il CROSS JOIN
operatore, il metodo più tipico utilizza ON 1=1
:
select t1.*, t2.*
from t1 join
t2
on 1 = 1;