Heim  >  Artikel  >  Datenbank  >  Eine detaillierte Einführung in Ranking-Funktionen in MySQL

Eine detaillierte Einführung in Ranking-Funktionen in MySQL

黄舟
黄舟Original
2017-08-09 15:33:111893Durchsuche

Rang ein bestimmtes Feld in der MySQL-Datentabelle


1. Ursprüngliche Tabellendaten . done_seconds ist die Abschlusszeit, und die Anforderung besteht darin, jedes Datenelement basierend auf diesem Feld zu ordnen.

Eine detaillierte Einführung in Ranking-Funktionen in MySQL


2. Geben Sie die folgende SQL-Anweisung ein:

SELECT A.*,@rank:=@rank+1 AS pm FROM (SELECT * FROM task_news_user_done_list ORDER BY done_seconds) A, (SELECT  @rank:=0) B

Eine detaillierte Einführung in Ranking-Funktionen in MySQL

3. Nach der Ausführung dieser Anweisung wird das Feld „pm“ zu den Abfrageergebnissen hinzugefügt. Der Wert dieses Feldes ist das Ergebnis der Sortierung basierend auf done_seconds. Beachten Sie das Problem der aufsteigenden und absteigenden Reihenfolge.

Eine detaillierte Einführung in Ranking-Funktionen in MySQL

4. Neben einzelnen Feldern können auch Durchschnittswerte sortiert werden. Wenn Sie den Durchschnittswert von done_seconds für dieselbe user_email in der obigen Tabelle sortieren möchten, können Sie die folgende SQL-Anweisung verwenden:

SELECT A.*,@rank:=@rank+1 AS pm 
FROM 
(SELECT user_email, AVG(done_seconds) AS done_seconds FROM task_news_user_done_list GROUP BY user_email ORDER BY done_seconds) A, (SELECT  @rank:=0) B

Eine detaillierte Einführung in Ranking-Funktionen in MySQL

5. Die Ergebnisse nach dem Sortieren sind wie unten dargestellt. Das Ranking zu diesem Zeitpunkt ist das durchschnittliche Ranking aller erledigten_Sekunden derselben Benutzer-E-Mail.

Eine detaillierte Einführung in Ranking-Funktionen in MySQL


6 Bei Bedarf beitreten, wo und andere Einschränkungen. Wie unten gezeigt.

Klicken Sie auf „Gefällt mir“, wenn Sie es nützlich finden.

Eine detaillierte Einführung in Ranking-Funktionen in MySQL



Das obige ist der detaillierte Inhalt vonEine detaillierte Einführung in Ranking-Funktionen in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn