Zeilennummer in einer MySQL Abfrage ausgeben: Unterschied zwischen den Versionen
Aus ITwiki
Franky (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== Problem == Es gibt bei MySQL keinen Befehlt um eine fortlaufende Zeilennummer auszugeben. == Lösung == Eine Zeilennummer kann mit Hilfe einer Variable e…“) |
Franky (Diskussion | Beiträge) |
||
Zeile 7: | Zeile 7: | ||
Eine Zeilennummer kann mit Hilfe einer Variable erzeugt werden: | Eine Zeilennummer kann mit Hilfe einer Variable erzeugt werden: | ||
− | < | + | <source lang="sql"> |
SELECT feld1, feld2, @num := @num + 1 AS position | SELECT feld1, feld2, @num := @num + 1 AS position | ||
FROM tabelle | FROM tabelle | ||
JOIN (SELECT @num := 0 FROM DUAL) AS n ON 1=1 | JOIN (SELECT @num := 0 FROM DUAL) AS n ON 1=1 | ||
− | </ | + | </source> |
+ | |||
+ | Über den JOIN wird die Variable @num initialisiert und bei jeder Zeilte mit @num := @num + 1 erhöht. | ||
[[Kategorie:Datenbanken]] | [[Kategorie:Datenbanken]] |
Aktuelle Version vom 24. Januar 2012, 17:40 Uhr
Problem[Bearbeiten]
Es gibt bei MySQL keinen Befehlt um eine fortlaufende Zeilennummer auszugeben.
Lösung[Bearbeiten]
Eine Zeilennummer kann mit Hilfe einer Variable erzeugt werden:
SELECT feld1, feld2, @num := @num + 1 AS position
FROM tabelle
JOIN (SELECT @num := 0 FROM DUAL) AS n ON 1=1
Über den JOIN wird die Variable @num initialisiert und bei jeder Zeilte mit @num := @num + 1 erhöht.