Heim >Datenbank >MySQL-Tutorial >Wie erhalte ich den Datensatzindex (Zeilennummer) in einer MySQL-Tabelle?
Den Datensatzindex in einer MySQL-Tabelle abrufen
In MySQL enthalten Tabellen häufig eine große Anzahl von Datensätzen. Es kann nützlich sein, eine Spalte zu haben, die den Datensatzindex oder die Zeilenposition für jede Zeile in einer Tabelle enthält. Dies kann für verschiedene Zwecke verwendet werden, z. B. zum Einstufen von Benutzern oder zum Anzeigen der Position eines bestimmten Datensatzes in einer Sequenz.
Lösung
So generieren Sie eine Spalte mit Für den Datensatzindex können Sie eine Kombination aus benutzerdefinierten Variablen und einer Join-Anweisung verwenden. Hier ist ein Beispiel:
SELECT l.position, l.username, l.score, @curRow := @curRow + 1 AS row_number FROM league_girl l JOIN (SELECT @curRow := 0) r;
In dieser Abfrage:
Beispielverwendung
Betrachten Sie die folgende Tabelle „league_girl“. :
position | username | score |
---|---|---|
1 | a | 10 |
2 | b | 25 |
3 | c | 75 |
4 | d | 25 |
5 | e | 55 |
6 | f | 80 |
7 | g | 15 |
Die folgende Abfrage gibt den Datensatzindex, den Benutzernamen und die Punktzahl für alle Zeilen in zurück league_girl-Tabelle mit einer Punktzahl größer als 50:
SELECT l.position, l.username, l.score, @curRow := @curRow + 1 AS row_number FROM league_girl l JOIN (SELECT @curRow := 0) r WHERE l.score > 50;
Die Ausgabe dieser Abfrage ist:
position | username | score | row_number |
---|---|---|---|
3 | c | 75 | 1 |
5 | e | 55 | 2 |
6 | f | 80 | 3 |
Das obige ist der detaillierte Inhalt vonWie erhalte ich den Datensatzindex (Zeilennummer) in einer MySQL-Tabelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!