wulfgang Geschrieben 23. Mai 2009 Geschrieben 23. Mai 2009 Hallo, habe noch eine Frage(SQL mit ORACLE). Weiß jemand, wie ich in eine neue Relation die ersten n Einträge aus einer anderen Tabelle einfüge. Ich kenne insert into.. Select ... from .... Aber wie wähle ich nun die ersten n aus?
dr.dimitri Geschrieben 23. Mai 2009 Geschrieben 23. Mai 2009 wie ich in eine neue Relation Du meinst in eine neue Tabelle. Eine Relation ist nichts physikalisches. Aber wie wähle ich nun die ersten n aus? So: insert into ziel (spalteA,spalteB) select spalte1,spalte2 from (select spalte1,spalte2 from quelle order by spalteXY) a where rownum <=100; Damit lädst Du 100 Zeilen aus der Quelltabelle. Du kannst es auch ohne Subselect machen, allerdings sind die 100 Zeilen dann zufällig gewählt. Rownum ist eine sog. Pseudospalte, die dem Ergebnis dynamisch zugewiesen wird. Dim
wulfgang Geschrieben 23. Mai 2009 Autor Geschrieben 23. Mai 2009 2Fragen noch: 1)Wofür steht denn das 'a'? 2)Bisher habe ich das Subselect nur hinter der where-Klausel oder having gesehen. Ist das Absicht, dass das nun hinter from steht?
robotto7831a Geschrieben 23. Mai 2009 Geschrieben 23. Mai 2009 Das a bezeichnet eine dynamsich temporäre Tabelle. Diese wird mit dem select innerhalb der Klammer kurz vor dem a definiert. Frank
dr.dimitri Geschrieben 23. Mai 2009 Geschrieben 23. Mai 2009 Wofür steht denn das 'a'? Es ist ein Alias. Damit kannst du mittels a.spaltenname ganz gezieklt auf eine bestimmte Spalte zugreifen, wenn z.B. in deinem SQL dieser Spaltenname von mehreren Tabellen verwendet wird. Ich hätte auch Hugo schreiben können. Bisher habe ich das Subselect nur hinter der where-Klausel oder having gesehen. Ist das Absicht, dass das nun hinter from steht? Ja. Die Ergebnismenge wird behandelt wie eine normale Tabelle. Dim
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden