计算某个值在一组行中的相对位置。
CUME_DIST( ) OVER ( window-spec )
window-spec:请参见下面“注释”部分的说明
介于 0 和 1 之间的 DOUBLE 值。
目前不允许在 CUME_DIST 函数中使用组合排序键。您可以在任何其它秩函数中使用组合排序键。
可以在函数语法中指定 window-spec 的元素(内置),也可以将这些元素与 SELECT 语句中的 WINDOW 子句一并加以指定。作为窗口函数使用时,必须指定 ORDER BY 子句,还可以指定 PARTITION BY 子句,但不能指定 ROWS 或 RANGE 子句。请参见WINDOW 子句中提供的 window-spec 定义。
有关在 SELECT 语句中使用窗口函数的详细信息(包括工作示例),请参见窗口函数。
SQL/2003 SQL/OLAP 特性 T612。
以下示例返回一个包含居住在 California 的职员的薪水累计分布的结果集。
SELECT DepartmentID, Surname, Salary, CUME_DIST() OVER (PARTITION BY DepartmentID ORDER BY Salary DESC) "Rank" FROM Employees WHERE State IN ('CA'); |
以下是该结果集:
DepartmentID | Surname | Salary | Rank |
---|---|---|---|
200 | Savarino | 72300.000 | 0.333333333333333 |
200 | Clark | 45000.000 | 0.666666666666667 |
200 | Overbey | 39300.000 | 1 |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |