Bolt 后端窗口函数支持

qianmoQqianmoQ· 更新于 2026-10-02· 阅读 2 分钟· 0 次阅读

登录后可跨设备保存划线和私人笔记登录

Bolt 中的窗口函数支持情况

Spark 函数Spark 表达式状态限制
cume_distCumeDistS返回分区内的 DOUBLE 累积分布值。
dense_rankDenseRankS返回每个分区内的密集排名。
lagLagS偏移量必须 ≥ 0;offset = 0 返回当前行。支持可选默认值。IGNORE NULLS 受支持,且 lag 作用于整个分区,不受 frame 限制。
leadLeadS规则与 lag 相同:偏移量 ≥ 0,offset = 0 返回当前行,支持可选默认值和 IGNORE NULLS,作用于整个分区。
nth_valueNthValueS返回类型与值表达式一致。无论使用常量偏移还是列偏移,偏移量都必须 ≥ 1,更小的值会被拒绝。IGNORE NULLS 在针对 PrestoSQL 映射时受引擎支持。
ntileNTileS分桶数必须 > 0;0 或负值会被拒绝。当分桶数超过分区大小时,分桶索引实际上跟随行号。若分桶表达式为 NULL,则结果为 NULL。
percent_rankPercentRankS返回一个 DOUBLE,取值范围为 \[0, 1],计算方式为 (rank - 1) / (partition_row_count - 1)(分区中仅有一行时为 0)。
rankRankS使用标准 SQL 的 rank 语义返回每个分区内的排名。
row_numberRowNumberS在每个分区内分配连续的行号。

评论

登录后参与评论

正在加载评论…