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

UDF和UDAF、UDTF的区别

UDF


UDF(User-defined functions)用户自定义函数,简单说就是输入一行输出一行的自定义算子。
是大多数 SQL 环境的关键特性,用于扩展系统的内置功能。(一对一

UDAF


UDAF(User Defined Aggregate Function),即用户定义聚合函数,聚合函数和普通函数的区别是什么呢,普通函数是接受一行输入产生一个输出,聚合函数是接受一组(一般是多行)输入然后产生一个输出,即将一组的值想办法聚合一下。(多对一

UDAF可以跟group by一起使用,也可以不跟group by一起使用,这个其实比较好理解,联想到mysql中的max、min等函数,可以:

select max(foo) from foobar group by bar;

表示根据bar字段分组,然后求每个分组的最大值,这时候的分组有很多个,使用这个函数对每个分组进行处理,也可以:

select max(foo) from foobar;

这种情况可以将整张表看做是一个分组,然后在这个分组(实际上就是一整张表)中求最大值。所以聚合函数实际上是对分组做处理,而不关心分组中记录的具体数量。

UDTF


UDTF(User-Defined Table-Generating Functions),用户自定义生成函数。它就是输入一行输出多行的自定义算子,可输出多行多列,又被称为 “表生成函数”。(一对多

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

相关文章:

  • 小研究 - 浅析 JVM 中 GC 回收算法与垃圾收集器
  • Flowable-服务-骆驼任务
  • 用html+javascript打造公文一键排版系统9:主送机关排版
  • SpringBoot 集成 EasyExcel 3.x 优雅实现 Excel 导入导出
  • RT1052 的四定时器
  • ViT-vision transformer
  • Election of the King 2023牛客暑期多校训练营4-F
  • Nacos的搭建及服务调用
  • uniapp小程序自定义loding,通过状态管理配置全局使用
  • leetcode 45. 跳跃游戏 II
  • 力扣热门100题之矩阵置0【中等】
  • 【机器学习】Classification using Logistic Regression
  • 全方位支持图文和音视频、100+增强功能,Facebook开源数据增强库AugLy
  • RxSwift 使用方式
  • HTML5 Web Worker
  • 25.9 matlab里面的10中优化方法介绍—— 惩罚函数法求约束最优化问题(matlab程序)
  • django channels实战(websocket底层原理和案例)
  • 学习使用axios,绑定动态数据
  • c语言内存函数的深度解析
  • 低代码平台介绍(国内常见的)
  • matlab RRR机械臂 简略代码
  • 集成测试,单元测试隔离 maven-surefire-plugin
  • 渗透测试基础知识(1)
  • Android NDK开发
  • 使用python爬取淘宝商品信息
  • QEMU源码全解析18 —— QOM介绍(7)
  • 【华为OD机试】 选修课
  • 225. 用队列实现栈
  • IDEA将本地项目上传到码云
  • Ubuntu更改虚拟机网段(改成桥接模式无法连接网络)