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 Installationsschritte für MySQL 8.0.11

In diesem Artikel werden die Installationsschritt...

Fehler beim reduzierten Tabellenzeilenelement

Nehmen wir ein Beispiel: Der Code ist sehr einfach...

Natives JS-objektorientiertes Tippspiel

In diesem Artikel wird der spezifische Code des o...

Vue verwendet Echart, um Beschriftungen und Farben anzupassen

In diesem Artikelbeispiel wird der spezifische Co...

Installieren Sie MySQL 5.7 unter Ubuntu 18.04

Dieser Artikel wurde unter Bezugnahme auf die off...

Mehrere Möglichkeiten zum Festlegen der Ablaufzeit von localStorage

Inhaltsverzeichnis Problembeschreibung 1. Basislö...

So betten Sie Dateien im Flash-Videoformat (FLV, SWF) in HTML-Dateien ein

Flash-Dateiformate: .FLV und .SWF Für das Flash-Vi...

Webdesign-Tutorial (3): Designschritte und Denkweise

<br />Vorheriges Tutorial: Webdesign-Tutoria...

Eine kurze Diskussion über die Rolle leerer HTML-Links

Leerer Link: Das heißt, es besteht keine Verbindu...

Erfahren Sie in 3 Minuten, wie Sie den Supervisor Watchdog verwenden

Software- und Hardwareumgebung centos7.6.1810 64b...

Javascript-Eingabebild-Upload und -Vorschau, FileReader-Vorschaubild

FileReader ist eine wichtige API für die Frontend...

Flexibles Boxmodell von CSS und CSS3 zur Anpassung der Elementbreite (-höhe)

1. CSS realisiert eine feste Breite links und ein...