Satznummer im SQL erzeugen

Hallo,

gibt es eine möglich, in einer Spalte des Ergebnisse eine durchlaufende “Satznummer” zu erzeugen??? Dass würde mir bei der Kombination eines
Insert into table2 select a,b,c from table1
helfen.

leider ist es nicht damit getan, in table2 das Feld als serial anzulegen…

Vielleicht weiß ja jemand Rat…

Gruß

mkuis

Wenn Du 8.4 verwendest ist das ganz einfach:

SELECT row_number() over (), a, b, c 
FROM my_table;

Was genau willst Du erreichen, was genau hast Du versuchst, und was genau ist passiert?

Hint: Dinge wie row_number() existieren in/ab 8.4, aber ich sehe noch nicht wirklich, wo genau Du das brauchst und warum ein serial nicht auch in diesem Fall helfen sollte.


Andreas

Ich dachte an sowas:

INSERT INTO table2 (lfd_nr, a, b, c)
SELECT row_number() over (), a, b, c 
FROM tabl1

Schon klar, aber das geht auch mit einer Sequence.

Andreas, Brüssel, Europe :wink:

Danke, die Funktion row_number war genau das, was ich gesucht habe. Ich habe erst vor zwei Wochen auf 8.4 gewechselt (was sich in der Geschwindigkeit übrigens wirklch gelohnt hat!), und muß mich jetzt wohl mal mit den neuen Window-Funktionen auseinandersetzen.


Danke für den Tipp!!