SQL : right outer join in oracle mit inline view

Hallo,
ich habe folgendes Problem ich will aus mehreren Tabellen Daten auslesen und diese danach mit einer anderen Tabelle joinen (Right Outer Join);

SELECT A.name, A.nachname, A.ID
FROM Tabelle1 A
RIGHT OUTER JOIN (
SELECT B.name, B.nachname, C.ID, C.Data
FROM Tabelle2 B, Tabelle3 C
WHERE B.C_ID = C.ID
) ON (A.C_REF_ID = B.ID)
GROUP BY A.ID;

bei dieser Abfrage gibt Oracle SQLPLUS folgende Fehlermeldung zurück:
Dieser Befehl wurde in Zeile (mit ON)nicht korrekt beendet…
wenn ich das group by weg lasse meckert SQLPLUS, dass ihm B.ID nicht bekannt wäre.

Wenn mir jemand von Euch/Ihnen ein Beispiel für einen Join von Daten einer Tabelle mit einem Inline-View geben könnte, wäre ich sehr erfreut (oder einen Link, an dem ein solches abgebildet ist)

Danke und Grüße
Malte Roessner

Hi!

Spät aber doch (hab schon ewig nimmer hier reingeschaut):

Der Alias B liegt in der View und Du verjoinst ihn außerhalb dieser - DAS funktioniert natürlich nicht, probier’s mal so:

SELECT A.name, A.nachname, A.ID
FROM Tabelle1 A
RIGHT OUTER JOIN (
 SELECT B.name, B.nachname, C.ID, C.Data
 FROM Tabelle2 B, Tabelle3 C
 WHERE B.C\_ID = C.ID
) D ON (A.C\_REF\_ID = D.ID)
GROUP BY A.ID;

Aber unter Oracle würde ich es sowieso eher so schreiben:

SELECT A.name, A.nachname, A.ID
FROM Tabelle1 A,
 (SELECT B.name, B.nachname, C.ID, C.Data
 FROM Tabelle2 B, Tabelle3 C
 WHERE B.C\_ID = C.ID) D
WHERE A.C\_REF\_ID = D.ID (+)
GROUP BY A.ID;

Grüße,
Tomh