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行
相关推荐
liliangcsdn4 小时前
mac测试ollama llamaindex
数据仓库·人工智能·prompt·llama
码字的字节6 小时前
深入解析YARN中的FairScheduler与CapacityScheduler:资源分配策略的核心区别
hadoop·capacity·fairscheduler
Johny_Zhao6 小时前
Centos8搭建hadoop高可用集群
linux·hadoop·python·网络安全·信息安全·云计算·shell·yum源·系统运维·itsm
晴天彩虹雨21 小时前
统一调度与编排:构建自动化数据驱动平台
大数据·运维·数据仓库·自动化·big data·etl
码字的字节1 天前
深入解析Hadoop高频面试题:HDFS读/写流程的RPC调用链
hadoop·hdfs·rpc
白日与明月1 天前
Hive-vscode-snippets
hive·hadoop·vscode
Sirius Wu1 天前
Hive的窗口函数
数据仓库·hive·hadoop
码字的字节1 天前
深入解析HBase如何保证强一致性:WAL日志与MVCC机制
hadoop·hbase·wal·mvcc
シ風箏1 天前
Hive【安装 01】hive-3.1.2版本安装配置(含 mysql-connector-java-5.1.47.jar 网盘资源)
java·hive·mysql
zhixingheyi_tian1 天前
Hadoop 之 Yarn
大数据·hadoop·分布式