Problembeschreibung:
In der Datenbankabfrage müssen Sie möglicherweise nur für jede Datengruppe nach N -Row -Daten suchen. Beispielsweise kann Ihr Datensatz mehrere Zeilen von Gruppen in Gruppen und IDs enthalten. Wenn Sie die ersten fünf Datensätze jeder ID anzeigen möchten, müssen Sie eine Methode implementieren, um das Ergebnis auf die erforderliche Menge zu beschränken.
Lösung:
In MySQL 8 oder höhere Versionen können Sie Row_Number, Rang oder Dense_Rank -Funktion verwenden, um diesen Zweck zu erreichen. Die spezifische Funktion, die Sie auswählen, hängt von der genauen Definition der "vorderen N -Zeile" und dem Umgang mit der Seite an Seite ab. Das Folgende ist die Unterteilung der Ergebnisse dieser Funktionen:
Zuweisen die Sequenznummer für die Zeile in jeder Gruppe ab 1. Wenn Sie das gleiche Ranking brechen möchten, um das gleiche Ranking mit demselben Wert zu geben, ist diese Funktion ideal.
Durch die Verwendung dieser Funktionen können Sie die Ergebnisse effektiv auf die vorderen N -Zeilen jeder Gruppe einschränken und die Datenbedürfnisse sicherstellen.
Das obige ist der detaillierte Inhalt vonWie rufe ich nur die Top -N -Zeilen pro Gruppe in MySQL ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!