Hive函数, 你必须要掌握的

本文详细介绍了SQL中的各种函数,包括字符串处理(如split、substr和concat_ws)、日期时间操作(如date_add和datediff)、数学计算(如round和rand)、类型转换(cast)、数据挖掘(coalesce、case和get_json_object)、JSON处理以及数据分析排名函数(row_number、rank、dense_rank、ntile和lag)。
摘要由CSDN通过智能技术生成
show functions;

describe function extended 函数;

split()      -- 字符串切割, 参数1: 要操作的字符串,  参数2: 切割符

substr()     -- 字符串切割, 参1: 要操作的字符串.  参2: 起始索引, 参数3: 个数

concat_ws()  -- 指定拼接符, 参1是拼接符, 后续的参数是要拼接的内容

date_add()   -- 时间增加, 减少

datediff()   -- 时间比较.

year         -- 获取年

round()      -- 四舍五入, 原理: +0.5, 然后求地板数.

rand()       -- 随机数 0.0 ~ 1.0, 包左不包右.

cast()       -- 类型转换

coalesce()   -- 非空查找 coalesce(值1, 值2....), 获取参数列表中, 第1个非null值

case...when.. -- case when转换.

get_json_object() --处理json字符串,get_json_object(json_txt, path), 细节: 整个json字符串用单引号'包裹, json字符串中的键, 值用双引号"包裹.

explode()    -- 炸裂函数,对数据进行炸开

collect_list() -- 采集数据, 可重复, 有序

row_number() , rank() , dense_rank() 
-- row_number(), rank(), dense_rank(), 它们都可以做排名, 不同的是, 对相同值的处理结果.
--  例如: 数据是100, 90, 90, 60, 则: row_number是: 1, 2, 3, 4,  rank: 1, 2, 2, 4,  dense_rank: 1, 2, 2, 3

ntile()        -- 数字,表示分成几份

lag()          -- 用于统计窗口内往上第n行值

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值