sparksql 大小写_Spark SQL函数

本文详细介绍了Spark SQL中的各种函数,包括聚合函数、集合函数、时间函数、数学函数、混杂函数、非聚合函数、排序函数、字符串函数,以及如何使用它们进行数据操作。例如,聚合函数中的`countDistinct`、`avg`、`sum`,集合函数中的`explode`,时间函数中的`add_months`、`date_format`,数学函数中的`sin`、`cos`,字符串函数中的`concat`、`lower`等。此外,还涵盖了UDF函数的定义和调用,以及窗口函数的应用。
摘要由CSDN通过智能技术生成

Spark SQL函数

发布时间:2018-10-23 14:35,

浏览次数:942

, 标签:

Spark

SQL

<>Spark SQL函数

<>一、概述

<>1、来源:

本文总结自spark 2.3.1 API文档 org.apache.spark.sql:object functions;

<>2、使用:

org.apache.spark.sql.functions中提供了约两百多个函数,大部分函数与Hive中类似,除UDF函数,均可在SparkSQL中直接使用;

如果想要用于Dataframe 和 Dataset,可导入函数:

import org.apache.spark.sql.functions._

其中,大部分支持Column的函数也支持String类型的列名,这些函数的返回类型基本都是Column。

<>3、函数分类:

* 聚合函数

* 集合函数

* 时间函数

* 数学函数

* 混杂misc函数

* 其他非聚合函数

* 排序函数

* 字符串函数

* UDF函数

* 窗口函数

<>二、函数:

<>1、聚合函数

函数 作用

approx_count_distinct count_distinct近似值

avg 平均值

collect_list 聚合指定字段的值到list

collect_set 聚合指定字段的值到set

corr 计算两列的Pearson相关系数

count 计数

countDistinct 去重计数 SQL中用法select count(distinct class)

covar_pop 总体协方差(population covariance)

covar_samp 样本协方差(sample covariance)

first 分组第一个元素

last 分组最后一个元素

grouping

grouping_id

kurtosis 计算峰态(kurtosis)值

skewness 计算偏度(skewness)

max 最大值

min 最小值

mean 平均值

stddev 即stddev_samp

stddev_samp 样本标准偏差(sample standard deviation)

stddev_pop 总体标准偏差(population standard deviation)

sum 求和

sumDistinct 非重复值求和 SQL中用法select sum(distinct class)

var_pop 总体方差(population variance)

var_samp 样本无偏方差(unbiased variance)

variance 即var_samp <>2、集合函数

函数 作用

array_contains(column,value) 检查array类型字段是否包含指定元素

explode 展开array或map为多行

explode_outer 同explode,但当array或map为空或null时,会展开为null。

posexplode 同explode,带位置索引。

posexplode_outer 同explode_outer,带位置索引。

from_json 解析JSON字符串为StructType or ArrayType,有多种参数形式,详见文档。

to_json 转为json字符串,支持StructType, ArrayType of StructTypes, a MapType or

ArrayType of MapTypes。

get_json_object(column,path) 获取指定json路径的json对象字符串。

json_tuple(column,fields) 获取json中指定字段值。

map_keys 返回map的键组成的array

map_values 返回map的值组

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值