当前位置: 首页 > news >正文

Hive:窗口函数(1)

窗口函数

窗口函数OVER()用于定义一个窗口,该窗口指定了函数应用的数据范围 

对窗口数据进行分区 

partition by 必须和over () 一起使用, distribute by经常和sort by 一起使用,可以不和over() 一起使用.DISTRIBUTE BY决定了数据如何分布到不同的Reducer上,而SORT BY决定了每个Reducer内部数据的排序方式。

示例

对数据进行排序

sort by 子句会让输入的数据强制排序 (强调:当使用排序时,窗口会在组内逐行变大)

示例

补充

示例 

Windows子句

rows 和 range都是用来定义窗口框架, 不同的是rows基于行号, 而 RANGE子句通常用于基于值的范围来定义窗口

聚合函数开窗时order by 是表示累加,默认从起点行到当前行的累加;所以,示例1和示例2的结果是一样的

在没有order by的聚合函数sum()开窗的结果是起点到终点的累加值(示例3)

示例1

示例2 

示例3 

示例4

前一行到当前行的加和(S列的值是SAL列的前一行的值加当前行的值)

示例5

前一行到后一行的范围

http://www.lryc.cn/news/529441.html

相关文章:

  • docker安装nacos2.2.4详解(含:nacos容器启动参数、环境变量、常见问题整理)
  • 基于PLC的变频调速系统设计
  • 鸿蒙开发在onPageShow中数据加载不完整的问题分析与解决
  • 本地搭建deepseek-r1
  • 【数据结构与算法】AVL树的插入与删除实现详解
  • 【机器学习】自定义数据集 使用pytorch框架实现逻辑回归并保存模型,然后保存模型后再加载模型进行预测,对预测结果计算精确度和召回率及F1分数
  • unity学习23:场景scene相关,场景信息,场景跳转
  • AI(计算机视觉)自学路线
  • Linux第104步_基于AP3216C之I2C实验
  • 常用Android模拟器(雷电 MuMu 夜神 Genymotion 蓝叠) - 20250131
  • 算法题(53):对称二叉树
  • Golang 并发机制-2:Golang Goroutine 和竞争条件
  • 深入剖析 CSRF 漏洞:原理、危害案例与防护
  • C++和Python实现SQL Server数据库导出数据到S3并导入Redshift数据仓库
  • AI大模型开发原理篇-5:循环神经网络RNN
  • 4-图像梯度计算
  • 数据结构与算法 —— 常用算法模版
  • DDD - 领域事件_解耦微服务的关键
  • 芯片AI深度实战:实战篇之vim chat
  • 【产品经理学习案例——AI翻译棒出海业务】
  • 解决运行npm时报错
  • 【07-编译工程与导入网表】
  • FireFox | Google Chrome | Microsoft Edge 禁用更新 final版
  • conda配置channel
  • 【MQ】探索 Kafka
  • Workbench 中的热源仿真
  • 计算机网络 笔记 网络层 3
  • 翼星求生服务器搭建【Icarus Dedicated Server For Linux】
  • ZZNUOJ(C/C++)基础练习1011——1020(详解版)
  • 论文阅读:Realistic Noise Synthesis with Diffusion Models