MySQL-Sortierung zum Abrufen eines Ranking-Beispielcodes

MySQL-Sortierung zum Abrufen eines Ranking-Beispielcodes

Der Code sieht folgendermaßen aus:

SELECT @i:=@i+1 Zeilennummer,
wenn(@total=t.s_score,@rank,@rank:=@i) Rang,@total:=t.s_score,
T.*
aus(
wähle t1.*, t2.s_score von Student t1 LEFT JOIN Punktzahl t2 auf t1.s_id=t2.s_id und t2.c_id="01" ORDER BY t2.s_score desc
)t,(wählen Sie @i:=0,@rank:=0,@total:=null) s;
SELECT @i:=@i+1 Zeilennummer,
wenn(@total=t.s_score,@rank,@rank:=@rank+1) Rang,@total:=t.s_score,
T.*
aus(
wähle t1.*, t2.s_score von Student t1 LEFT JOIN Punktzahl t2 auf t1.s_id=t2.s_id und t2.c_id="01" ORDER BY t2.s_score desc
)t,(wählen Sie @i:=0,@rank:=0,@total:=null) s;

Mysql erhält das Ranking nach der Sortierung der Noten

Tatsächlich gibt es die Zeilennummer nach der MySQL-Sortierung aus

RT: Holen Sie sich die Rangfolge der Punktzahl eines einzelnen Benutzers unter den Punktzahlen aller Benutzer

Der Vorgang lässt sich in zwei Schritte unterteilen:

1. Alle Benutzer und ihre Leistungsbewertungen finden

Wählen Sie ID, maxScore, (@rowNum: = @rowNum + 1) als Zeilennummer 
von t_user, 
(Auswahl (@Zeilennummer :=0)) b 
Sortiert nach t_user.maxScore desc

2. Finden Sie das Ranking eines Benutzers unter den Bewertungen aller Benutzer heraus

wähle u.rowNo aus ( 
Wählen Sie ID, (@rowNum:=@rowNum+1) als Zeilennummer 
von t_user, 
(Auswahl (@Zeilennummer :=0)) b 
Sortieren nach t_user.maxScore desc) u, wobei u.id="2015091810371700001";

Zusammenfassen

Oben ist die vom Herausgeber eingeführte Mysql-Sortierungs- und Ranglistenerfassung. Ich hoffe, sie wird allen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • MySQL implementiert Ranking und fragt die angegebene Benutzer-Ranking-Funktion ab (parallele Ranking-Funktion) Beispielcode
  • MySQL-Seitenzugriffsstatistiken und -Rankings
  • So fügen Sie den Ergebnissen benutzerdefinierter Feldabfragen in MySQL eine Rangfolge hinzu
  • MySQL-Gruppierung, um die ersten paar Datensätze in jeder Gruppe (Ranking) mit Recherche nach „Gruppieren nach“ und „Sortieren nach“ zu erhalten
  • Fassen Sie einige häufige Rankingprobleme in MySQL zusammen

<<:  So verwenden Sie Webstorm und Chrome zum Debuggen von Vue-Projekten

>>:  So gehen Sie mit dem vom Linux-System gemeldeten Warnproblem xfs_vm_releasepage um

Artikel empfehlen

Detaillierte Analyse der MySQL-Sperrblockierung

Bei der täglichen Wartung werden Threads häufig b...

Führen Sie die Schritte zur Verwendung des Elements in vue3.0 aus

Vorwort: Verwenden Sie das Element-Framework in v...

Detailliertes Tutorial zum Herunterladen von MySQL unter Windows 10

MySQL-Versionen werden in Enterprise Edition und ...

So verwenden Sie CSS-Stile und -Selektoren

Drei Möglichkeiten, CSS in HTML zu verwenden: 1. ...

Tipps zur Datenstatistik in MySQL

Als häufig verwendete Datenbank erfordert MySQL v...

Website-Homepage-Design im Illustrationsstil Neuer Trend im Website-Design

Sie können sehen, dass ihre visuellen Effekte sehr...

Eine kurze Erläuterung der $notify-Punkte des Elements

Meine ursprüngliche Absicht war, die $notify-Bena...

js verwendet Cookies, um die Seitenvorgänge des Benutzers zu speichern

Vorwort Während des Entwicklungsprozesses stoßen ...

Die umfassendste Erklärung des Sperrmechanismus in MySQL

Inhaltsverzeichnis Vorwort Globale Sperre Vollstä...

Konfigurationsprozess für die MySQL-Master-Slave-Replikation

Konfiguration der Hauptbibliothek 1. Konfiguriere...