Berechnet den Rang eines Wertes in einer Gruppe von Werten. Im Fall von Gleichwertigkeit bewirkt die RANK-Funktion eine Lücke in der Rangfolgesequenz.
RANK( ) OVER ( window-spec )
window-spec : see the Remarks section below
INTEGER
Elemente von Fensterspezifikation können entweder in der Funktionssyntax (inline) oder mit einer WINDOW-Klausel in der SELECT-Anweisung angegeben werden. Bei Verwendung als Fensterfunktion müssen Sie eine ORDER BY-Klausel angeben und dürfen eine PARTITION BY-Klausel angeben, können jedoch keine ROWS- oder RANGE-Klausel angeben. Weitere Hinweise finden Sie unter der Fensterspezifikation-Definition für die WINDOW-Klausel. Siehe WINDOW-Klausel.
Weitere Hinweise zur Verwendung von Fensterfunktionen in SELECT-Anweisungen mit Arbeitsbeispielen finden Sie unter Fensterfunktionen.
Weitere Hinweise zum Angeben einer Fensterspezifikation in einer OVER-Klausel finden Sie unter Fensterdefinition: Inlining unter Verwendung der Klauseln OVER und WINDOW.
SQL/2008 Die RANK-Funktion ist Teil der optionalen SQL/2008-Sprachenfunktion T612, "Erweiterte OLAP-Vorgänge".
Das folgende Beispiel liefert eine Rangordnung der Gehälter von Mitarbeitern in Utah und New York in absteigender Reihenfolge. Beachten Sie, dass der 7. und 8. Mitarbeiter das gleiche Gehalt beziehen und sich daher den 7. Rang teilen. Der darauf folgende Mitarbeiter erhält den 9. Rang, wodurch eine Lücke in der Rangfolgensequenz entsteht (kein 8. Rang).
SELECT Surname, Salary, State, RANK() OVER (ORDER BY Salary DESC) "Rank" FROM GROUPO.Employees WHERE State IN ('NY','UT'); |
Surname | Salary | State | Rank |
---|---|---|---|
Shishov | 72995.000 | UT | 1 |
Wang | 68400.000 | UT | 2 |
Cobb | 62000.000 | UT | 3 |
Morris | 61300.000 | UT | 4 |
Davidson | 57090.000 | NY | 5 |
Martel | 55700.000 | NY | 6 |
Blaikie | 54900.000 | NY | 7 |
Diaz | 54900.000 | NY | 7 |
Driscoll | 48023.690 | UT | 9 |
Hildebrand | 45829.000 | UT | 10 |
Whitney | 45700.000 | NY | 11 |
... | ... | ... | ... |
Lynch | 24903.000 | UT | 19 |
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |