Zeilennummer in einer MySQL Abfrage ausgeben

Aus ITwiki
Wechseln zu: Navigation, Suche

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.