Amazon Redshift
数据库开发人员指南 (API Version 2012-12-01)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

DENSE_RANK 开窗函数

DENSE_RANK 开窗函数基于 OVER 子句中的 ORDER BY 表达式确定一组值中的一个值的排名。如果存在可选的 PARTITION BY 子句,则为每个行组重置排名。带符合排名标准的相同值的行接收相同的排名。DENSE_RANK 函数与 RANK 存在以下一点不同:如果两个或两个以上的行结合,则一系列排名的值之间没有间隔。例如,如果两个行的排名为 1,则下一个排名则为 2。

您可以在同一查询中包含带有不同的 PARTITION BY 和 ORDER BY 子句的排名函数。

语法

Copy
DENSE_RANK () OVER ( [ PARTITION BY expr_list ] [ ORDER BY order_list ] )

参数

( )

该函数没有参数,但需要空括号。

OVER

适用于 DENSE_RANK 函数的窗口子句。

PARTITION BY expr_list

可选。一个或多个定义窗口的表达式。

ORDER BY order_list

可选。排名值基于的表达式。如果未指定 PARTITION BY,则 ORDER BY 使用整个表。如果省略 ORDER BY,则所有行的返回值为 1。

如果 ORDER BY 未生成唯一顺序,则行的顺序是不确定的。有关更多信息,请参阅 开窗函数的数据的唯一排序

返回类型

INTEGER

示例

请参阅DENSE_RANK 开窗函数示例

本页内容: