累计分布函数 CUME_DIST,有时被定义为反百分点函数。CUME_DIST 计算特定值相对于窗口中一组值的规范化位置。该函数的范围在 0 到 1 之间。
随着窗口在输入行中向下移动,会计算在窗口的 ORDER BY 子句中所指定表达式的累计分布。当 ORDER BY 子句包括多个表达式时,若第一个表达式与相邻行具有相同值,则第二个及后续表达式将用于区分并列情况。NULL 值排在任何其它值的前面(在升序序列中)。
以下示例返回一个包含居住在 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.00 | 0.333333333333333 |
200 | Clark | 45000.00 | 0.666666666666667 |
200 | Overbey | 39300.00 | 1 |
有关 CUME_DIST 函数语法的详细信息,请参见CUME_DIST 函数 [Ranking]。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |