Postgresql - Functions and Operators 函数和运算 - Window Function

本文详细介绍了SQL中的窗口函数,包括row_number(), rank(), dense_rank(), percent_rank(), cume_dist(), ntile(), lag(), lead(), first_value(), last_value(), nth_value()等函数的功能、返回类型及应用场景。这些函数广泛应用于数据分析中,帮助用户更好地理解和操作数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

窗口函数。

Function

Return Type

Description

row_number()

bigint

在其分区内的当前行数,从1计数

rank()

bigint

具有间隙的当前行的秩;与其第一对等点的行数相同

dense_rank()

bigint

没有空隙的当前行的秩;该函数对对等组进行计数。

percent_rank()

double precision

当前行的相对秩: (rank - 1) / (total partition rows - 1)

cume_dist()

double precision

累积分布: (前面的分区行或当前行的对等行数) / 总共分区行

ntile(num_bucketsinteger)

integer

整数,从1到参数值,尽可能均匀地划分分区。

 

lag(value anyelement [,offset integer [,default anyelement ]])

same type as value

返回值是在分区内当前行之前的偏移量行中计算的;如果没有这样的行,则返回默认值。对于当前行,都对y偏移量和默认值进行评估。如果省略,则偏移量默认为1,默认值为零。

lead(value anyelement [,offset integer [,default anyelement ]])

same type as value

返回值是在分区内的当前行之后的偏移量行中计算的;如果没有这样的行,则返回默认值。对于当前行,都对y偏移量和默认值进行评估。如果省略,则偏移量默认为1,默认值为零。

first_value(value any)

same type as value

返回值x在窗口窗框的第一行的行上求值

last_value(value any)

same type as value

返回值x是在窗口框架的最后一行的行上计算的

nth_value(value any, nthinteger)

same type as value

返回值:在窗口帧的第n行行计数(从1计数);如果没有这样的行,则为null。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值