Hive零基础从入门到实战 进阶篇(十二) HiveQL:表生成函数(行转列)

本文介绍了Hive中的内置表生成函数,如explode、posexplode、stack等,并通过lateral view详细讲解了如何实现行转列操作,以及在聚合查询中的应用。

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

目录

前言

1. 表生成函数表

2. 函数功能演示

2.1 explode(ARRAY)

2.2 explode(MAP)

2.3 posexplode(ARRAY)

2.4 stack(INT n, v_1, v_2, ..., v_k)

2.5 json_tuple(jsonStr, k1, k2, ...)

2.6 parse_url_tuple(url, p1, p2, ...)

3. 表生成函数必备:lateral view

3.1 lateral view语法

3.2 应用1:行转列

3.3 应用2:求总聚合结果


前言

在Hive中,所有的表生成函数,包括用户自定义的和内置的,都统称为用户自定义表生成函数(user defined table generating functions),简称UDTF。本文只介绍Hive自带的内置表生成函数。

1. 表生成函数表

返回数值类型 函数名\所需参数\参数数据类型 描述

N rows

explode(ARRAY)

返回n行,每行对应数组中的一个元素

N rows

explode(MAP)

返回n行两列,每行

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风影楼前

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值