11 Stimme

MySQL: Reihen im Ergebnis nummerieren

Frage von Gast | 05.04.2016 um 10:22

Ich frage mich MySQL einige Daten aus einer Datenbank ab und ich würde im Ergebnis gerne die Datensätze beziehungsweise Reihen durchnummerieren.

Also nicht erst später mit PHP oder dergleichen sondern direkt im Ergebnis von MySQL soll vor jeder Zeile eine Nummer stehen. Ist das möglich?

AntwortenPositivNegativ
2Beste Antwort2 Stimmen

Ja, das ist möglich. Schau dir mal das folgende Beispiel an.

Wir lesen hier die Daten aus den Spalten "col1" und "col2" von Tabelle "tab" aus dem zusätzlich eine Zeilennummer. Der Tabelle tab haben wir den Alias t gegeben, so dass wir t.col1 und t.col2 schreiben.

SELECT (@row := @row + 1) as rownr, t.col1, t.col2
FROM tab t, (SELECT @row := 0) r

Die Nummerierung bekommen wir hin, indem wir mit "SELECT @row := 0" eine Variable "row" definieren und diese bei jedem auslesen um den Wert 1 erhöhen (@row := @row + 1) und das Ergebnis stets als "rownr" ausgeben.
05.04.2016 um 15:44

AntwortenPositiv Negativ
Antworten

Ähnliche Themen

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.