PostgreSQL排名窗口函数是否忽略窗口框架?相关疑问咨询
关于PostgreSQL窗口函数与窗口框架的疑问
我正在学习窗口函数,参考PostgreSQL官方文档的窗口函数相关章节,尝试按「是否遵循窗口框架/作用于整个分区」对窗口函数进行分类。
文档明确指出:first_value()、last_value()、nth_value()这几个取值类窗口函数,以及用作窗口函数的聚合函数,仅会考虑当前的窗口框架范围。但文档没有直接说明排名类窗口函数(包括rank()、dense_rank()、percent_rank()、cume_dist())是否遵循窗口框架。
我对此做出推测:这类排名函数,以及文档表9.65中除上述取值类、聚合类窗口函数之外的其他窗口函数,会忽略窗口框架,直接作用于整个分区。
现在有两个疑问需要解答:
- 上述推测是否正确?
rank()和dense_rank()中的peer groups(对等组)概念,能否解释它们忽略窗口框架的原因?
内容的提问来源于stack exchange,提问作者Logan O'Brien
相关产品推荐
相关产品推荐

