In Oracle ist ein lateraler Join ein kartesischer Join mit einer Ergebnismenge, die von den Werten der Zeile abhängt. Es wurde noch kein neues Schlüsselwort eingeführt (SQLFiddle ). ):
SQL> CREATE OR REPLACE TYPE number_nt AS TABLE OF NUMBER;
2 /
Type created
SQL> SELECT t.id, t.dt, u.column_value amount
2 FROM Transactions t
3 CROSS JOIN TABLE(number_nt(t.amount, t.amount2)) u;
ID DT AMOUNT
---------- ----------- ------------
1 05/06/2013 100
1 05/06/2013
2 05/06/2013 25
2 05/06/2013 75
Oracle scheint den LATERAL
zu verwenden Stichwort intern
obwohl.