窗口函数。
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。 |