Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Daten abfragen und ändern » OLAP-Unterstützung » Fensterfunktionen in SQL Anywhere

 

Fenster-Rangfunktionen

Fenster-Rangfunktionen liefern den Rang einer Zeile in Relation zu den anderen Zeilen einer Partition. Die von SQL Anywhere unterstützten Rangfunktionen sind:

Rangfunktionen werden nicht als Aggregatfunktionen angesehen, da sie kein Ergebnis aus mehreren Eingabezeilen berechnen wie beispielsweise die SUM-Aggregatfunktion. Diese Funktionen berechnen den Rang oder die relative Sortierung einer Zeile innerhalb einer Partition aufgrund des Wertes eines bestimmten Ausdrucks. Jede Gruppe von Zeilen innerhalb einer Partition wird unabhängig von den anderen Gruppen nach Rang sortiert. Falls die OVER-Klausel keine PARTITION BY-Klausel enthält, wird die gesamte Eingabe als eine einzige Partition behandelt. Sie können daher keine ROWS- oder RANGE-Klausel für ein Fenster spezifizieren, das von einer Rangfunktion verwendet wird. Es ist möglich, eine Abfrage zu bilden, die mehrere Rangfunktionen enthält, von denen jede einzelne die Eingabezeilen unterschiedlich partitioniert oder sortiert.

Alle Rangfunktionen benötigen eine ORDER BY-Klausel, um die Reihenfolge der Eingabezeilen festzulegen, von der die Rangfunktionen abhängig sind. Falls die ORDER BY-Klausel mehrere Ausdrücke enthält, werden der zweite und die folgenden Ausdrücke benutzt, um Gleichwertigkeiten aufzulösen, falls der erste Ausdruck den gleichen Wert in angrenzenden Zeilen ergibt. NULL steht in SQL Anywhere immer vor allen anderen Werten (bei aufsteigender Sortierfolge).


RANK-Funktion
DENSE_RANK-Funktion
CUME_DIST-Funktion
PERCENT_RANK-Funktion