hive开窗函数边界值ROWS BETWEEN 和 RANGE BETWEEN区别

目录

一、概念

[1.rows between ... and ...](#1.rows between ... and ...)

[2.range between ... and ...](#2.range between ... and ...)

二、语法

1.关键词含义


一、概念

1.rows between ... and ...

rows:指以行号来决定frame的范围,是物理意义上的行。

2.range between ... and ...

range:指以当前行在开窗函数中的值为根基,然后按照order by进行排序,最后根据range去加减上下界。是逻辑意义上的行。

二、语法

sql 复制代码
(ROWS | RANGE) BETWEEN (UNBOUNDED | [num]) PRECEDING AND ([num] PRECEDING | CURRENT ROW | (UNBOUNDED | [num]) FOLLOWING)
(ROWS | RANGE) BETWEEN CURRENT ROW AND (CURRENT ROW | (UNBOUNDED | [num]) FOLLOWING)
(ROWS | RANGE) BETWEEN [num] FOLLOWING AND (UNBOUNDED | [num]) FOLLOWING

1.关键词含义

sql 复制代码
CURRENT ROW :表示当前行
UNBOUNDED PRECEDING :表示窗口的起始边界是窗口中第一行之前的无限行,即初始行
UNBOUNDED FOLLOWING :表示窗口的起始边界是窗口中第一行之后的无限行,即末尾行
UNBOUNDED :无边界
PRECEDING :往前
FOLLOWING :往后
(num) PRECEDING :表示当前行之前的num行。
(num) FOLLOWING :表示当前行之后的num行
相关推荐
全栈派森2 小时前
BI数据开发全攻略:数据仓库、模型搭建与指标处理
数据仓库·python·程序人生
AI大数据智能洞察2 小时前
大数据领域数据仓库的备份恢复方案优化
大数据·数据仓库·ai
秦JaccLink2 小时前
Hive语句执行顺序详解
数据仓库·hive·hadoop
AI应用开发实战派2 小时前
大数据领域数据仓库的自动化测试实践
大数据·数据仓库·ai
AI算力网络与通信2 小时前
大数据领域 Hive 数据仓库搭建实战
大数据·数据仓库·hive·ai
Leo.yuan2 小时前
ODS 是什么?一文搞懂 ODS 与数据仓库区别
大数据·数据仓库·数据挖掘·数据分析·spark
boonya4 小时前
Apache Doris 大数据仓库全面解析
数据仓库·apache
拾光师5 小时前
Hadoop RPC深度解析:分布式通信的核心机制
大数据·hadoop
isNotNullX6 小时前
ETL详解:从核心流程到典型应用场景
大数据·数据仓库·人工智能·架构·etl
SelectDB技术团队16 小时前
岚图汽车 x Apache Doris : 海量车联网数据实时分析实践
数据仓库·人工智能·数据分析·汽车·apache