Ecco una domanda che mi ha sconvolto per alcuni giorni, e ho cercato e cercato ma non ho trovato nessuna risposta convincente!2 join esterni sullo stesso tavolo?
Domanda semplice, perché è limitato ad avere 2 Outer Join in SQL, sulla stessa tabella anche con colonne diverse in uso, controllare le query di seguito per una migliore comprensione. Posso anche superarli usando sub query annidate o join ANSI, ma poi perché è addirittura limitato in primo luogo usando l'operatore (+)!
In questa domanda mi riferisco a l'errore: "ORA-01417: un tavolo può essere esterna uniti al massimo un altro tavolo"
Quello che voglio porre è:
Perchè questo è consentito:
select * from
a, b, c
where a.a1 = b.b1
and a.a2 = c.c1
E perché questo non è consentito:
select * from
a, b, c
where a.a1(+) = b.b1
and a.a2(+) = c.c1
si prega di lasciare ANSI e subquery nidificati solo
Puoi fornire un esempio di ciò che stai cercando di fare? Dovresti essere in grado di unirti ('inner' o' outer') alla stessa tabella quante volte è necessario ... – sgeddes
Come hai detto @sgeddes, molto probabilmente sei confuso. Non c'è limite "2 Outer Joins" su Oracle – Lamak
Ti stai riferendo a 'ORA-01417: una tabella può essere esterna unita a un massimo di un'altra tabella? –