Apache Spark 2.4 新增内置函数和高阶函数使用介绍

本文介绍了Apache Spark 2.4版本中新增的内置函数和高阶函数,包括针对数组、map类型的操作以及通用函数。如array_distinct、array_intersect、filter、aggregate等,详细阐述了它们的使用方法和功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

针对数组类型的函数

array_distinct

array_distinct(array<T>): array<T> :从给定数组中删除重复值。使用如下:

SELECT array_distinct(array(1, 2, 3, null, 3));

 

[1,2,3,null]

array_intersect

array_intersect(array<T>, array<T>): array<T>:返回给定两个数组元素的交集,结果已经去重了。使用如下:

SELECT array_intersect(array(1, 2, 3), array(1, 3, 5));

 

[1,3]

array_union

array_union(array<T>, array<T>): array<T>:返回给定两个数组元素的并集,结果已经去重了。使用如下:

SELECT array_union(array(1, 2, 3), array(1, 3, 5));

 

[1,2,3,5]

array_except

array_except(array<T>, array<T>): array<T>:返回只在数组1而不在数组2的元素,结果已经去重了。使用如下:

SELECT array_except(array(1, 2, 3), array(1, 3, 5));

 

[2]

array_join

array_join(array<String>, String[, String]): String:使用分隔符将数组的元素进行拼接。另外,我们还可以指定可选的字符来替换 null 值。如果我们没有指定 null 值的替换字符串,那么结果中将会把 null 值替换掉。

SELECT array_join(array('hello', 'world'), ' ');

 

hello world

SELECT array_join(array('hello', null ,'world'), ' ');

 

hello world

 

SELECT array_join(array('hello', null ,'world'), ' ', ',');

 

hello , world

array_max

array_max(array<T>): T:返回数组中的最大值, null 元素将会被忽略。

SELECT array_max(array(1, 20, null, 3));

 

20

array_min

array_min(array<T>): T:返回数组中的最小值, null 元素将会被忽略。

SELECT array_max(array(1, 20, null, 3));

 

1

arra

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值