PG 窗口函数(待完善)

PG 窗口函数(待完善)


类似与聚合函数也是对结果集的运算生成一行结果,不同的事窗口函数是对分组内的数据进行运算再返回多行结果。

窗口函数语法

内置窗口函数 row_num() rank() lag() 等。
聚合函数和自定义聚集函数后接over属性也可以作为窗口函数。

function_name ([expression [, expression ... ]]) [FILTER ( WHERE filter_clause )] OVER ( window_definition )

其中 window_definition 语法如下:
[ existing_window_name ]
[ PARTITION BY expression [, ... ] ]
[ ORDER BY expression [ASC | DESC | USING operator ] [ NULLS { FIRST | LAST } ]  [ , ... ] ]
[ frame_clause ]

OVER表示窗口函数的关键字
PARTITION BY 属性对查询返回的结果集进行分组,之后窗口函数处理分组的数据。
ORDER BY 属性设定结果集的分组数据排序。

通用窗口函数

窗口函数别名

SELECT .. FROM .. WINDOW window_name as ( window_definition ) [, ... ]
例如:
select avg(score) over(r), sum(score) over(r), * from score window r as ( partition by subject );
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值