Wie zu verwenden ROWID mit einer Oracle-Join-View

Ich versuche zu erstellen, eine eindeutige Kennung für jede Zeile in einer Ansicht. Die Ansicht, die ich habe, reiht sich in eine Menge von Tabellen und damit keine einer Tabelle primary key wird mir helfen, die Zeile identifizieren.

Tun, eine google-Suche, es sieht aus wie ich möglicherweise in der Lage zu erreichen, dies über rowid? Aber ich bin mir nicht sicher, wie Sie Sie zur Referenz der Ansicht rowid. Unten ist ein Beispiel, wie ich mir vorgestellt rowid funktionieren würde, aber es offensichtlich nicht funktioniert und eine mehrdeutige Spalte' Fehler, da bin ich nicht die Angabe einer bestimmten Tabelle für die rowid.

Ex:


    with v_someTable (select...),
      v_anotherTable as (select blah, id from v_someTable where...),
      v_yetAnotherTable as (select foo, id from v_someTable where...)
    select distinct rowid, rt.key, v1.blah, v2.foo
    from realTable rt 
      left join v_anotherTable v1 on v1.id=rt.id 
      left join v_yetAnotherTable v2 on v2.id=rt.id

Ich versuche, dies in einer Abfrage und nicht in einer gespeicherten Prozedur. Jede mögliche Hilfe würde geschätzt!

Dank!

InformationsquelleAutor user973479 | 2011-12-07

Schreibe einen Kommentar