1. ROW_NUMBER() Definition: Die Funktion ROW_NUMBER() wird verwendet, um die abgefragten Daten nach Auswahl zu sortieren, wobei jedem Datenelement eine Seriennummer hinzugefügt wird. Sie kann nicht verwendet werden, um Schülernoten zu bewerten, und wird im Allgemeinen für Paginierungsabfragen verwendet. Beispiele: 1.1 Sortierung der Noten Hier ist die Nummer die Seriennummer jedes Studenten, die in umgekehrter Reihenfolge gemäß studentScore (Punktzahl) absteigt. 1.2 Holen Sie sich die Punkteinformationen des zweiten Schülers Die hier verwendete Idee ist die Idee der Paging-Abfrage. Fügen Sie außerhalb des ursprünglichen SQL eine weitere Auswahlebene hinzu 2. RANK() Definition: Die Funktion RANK() ist, wie der Name schon sagt, eine Rangfolgefunktion, die ein bestimmtes Feld bewerten kann. Warum unterscheidet sie sich von ROW_NUMBER()? ROW_NUMBER() dient zum Sortieren. Wenn es Studenten mit den gleichen Punktzahlen gibt, sortiert ROW_NUMBER() sie der Reihe nach und ihre Seriennummern sind unterschiedlich, während Rank() nicht gleich ist und ihre Rangfolge gleich ist. Schauen wir uns das folgende Beispiel an: 2.1 Ranking der Noten Hier können Sie sehen, wie ROW_NUMBER() und RANK() identisch sind. Da die Noten der Schüler unterschiedlich sind, sind die Rangfolge und Sortierung gleich. Sie werden den Unterschied sehen, wenn Sie es unten ändern. Bei Punktegleichheit zweier Studierender kommt es zu Änderungen. RANK() ist 1 2 2, während ROW_NUMBER() immer noch 1 2 3 ist. Das ist der Unterschied zwischen RANK() und ROW_NUMBER(). 3.DENSE_RANK() Definition: Die Funktion DENSE_RANK() ist ebenfalls eine Rangfolgefunktion. Sie ähnelt RANK(), da sie ebenfalls Felder ordnet. Was ist also der Unterschied zwischen dieser Funktion und RANK()? Siehe das Beispiel: Beispiele: Der Unterschied zwischen DENSE_RANK() und RANK() ist die Kontinuität der Rangfolge. DENSE_RANK() ist kontinuierlich, während RANK() eine springende Rangfolge ist. Daher ist die allgemein verwendete Rangfolgefunktion RANK(). 4.NTILE() Definition: Die Funktion NTILE() verteilt die Zeilen einer geordneten Partition auf eine bestimmte Anzahl von Gruppen. Jede Gruppe wird beginnend bei 1 nummeriert, genau wie das, was wir eine „Partition“ nennen, und in mehrere Zonen unterteilt. Außerdem wird angegeben, wie viele Zonen sich in einer Zone befinden. Beispiele: Die Abfrage wurde hier dreimal ausgeführt. Beim ersten Mal wurde sie in eine „Zone“ unterteilt, sodass die Abfrageergebnisnummern alle 1 waren. Beim zweiten Mal wurde sie in zwei Zonen unterteilt, das Abfrageergebnis war 1 1 2, was bedeutet, dass die erste „Zone“ zwei nummerierte Daten hat, 1 1, und die zweite „Zone“ nur die Daten 2 hat. An diesem Punkt haben wir die Diskussion zum Thema SQL-Ranking abgeschlossen. Nächstes Mal werden wir einige ausführlichere SQL-Ranking-Anweisungen vorstellen. Dies ist das Ende dieses Artikels über die Verwendung der vier wichtigsten SQL-Rankingfunktionen ROW_NUMBER, RANK, DENSE_RANK und NTILE. Weitere Informationen zur Verwendung der SQL-Rankingfunktionen ROW_NUMBER, RANK, DENSE_RANK und NTILE finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Schritte zur Implementierung des cuda10.1-Treibers bei der Installation von Ubuntu
>>: Vue implementiert das Hinzufügen von Wasserzeichen zu hochgeladenen Bildern
Inhaltsverzeichnis 1. Ändern Sie durch Binden des...
Warum die Dateisteuerung verschönern? Stellen Sie ...
1. Einleitung In diesem Artikel wird hauptsächlic...
Vorwort Manchmal sehen wir beim Anzeigen von Date...
Inhaltsverzeichnis 1. Unzip-Befehl 1.1 Syntax 1.2...
Vor ein paar Tagen habe ich erfahren, dass die of...
Inhaltsverzeichnis 1. Verwenden Sie SVG 2. Verwen...
Dieser Artikel beschreibt, wie xdebug in einer Ub...
Inhaltsverzeichnis Variable Verwenden Sie aussage...
Ich bin vor kurzem in ein neues Unternehmen einge...
Kurzbeschreibung Der Editor hat häufig Probleme m...
Inhaltsverzeichnis 1. Docker installieren 2. Code...
JS bietet drei Methoden zum Abfangen von Zeichenf...
1. Problem Manchmal, wenn wir uns bei Mysql anmel...
Inhaltsverzeichnis Einführung Untergeordneter Pro...