Hive-行转列(explode)
2024-09-27 09:00:08
场景:通过parseHtml UDF解析一串HTML,返回一以 @@ 分割的字符串,使用split分割字符串进数组中,然后将数组的元素转列。
开始的写法
SELECT
id,
legal_person,
explode(split(parseHtml(legal_person_track_record),'@@')) as record,
amac_status
FROM db_amac.dc_amac_manager limit ;
--问题
FAILED: SemanticException [Error 10081]: UDTF's are not supported outside the SELECT clause, nor nested in expressions
解决
select
id,
legal_person,
record,
amac_status
from db_amac.dc_amac_manager lateral view explode(split(parseHtml(legal_person_track_record),'@@')) recordTable as record;
Lateral View是Hive中提供给UDTF的conjunction,它可以解决UDTF不能添加额外的select列的问题。
最新文章
- UICollectionView
- 【Swift学习】Swift编程之旅---集合类型之数组(六)
- 解决ReSharper自动删除换行
- 检查Android系统版本
- JS实现动画原理一(闭包方式)
- iOS事件处理之七种手势
- 【题解】【字符串】【Leetcode】Valid Palindrome
- [Freescale]E9学习笔记-LTIB安装配置
- 百度地图API示例之小实践 添加代理商标注
- FireMonkey 平台初探
- contenteditable 属性
- 经典SQL语句大全(转载)
- ubuntu12.04 残疾人游客
- MSSQL存储过程接收另一个存储过程返回列表
- Sampling
- RDLC报表显示图片
- python执行centos命令
- 机器学习笔记(4):多类逻辑回归-使用gluton
- 关于django的操作(四)
- 【python】列表&;&;元组&;&;字典
热门文章
- golang build 编译规则
- hdu 4050(概率dp)
- java人民币转大写中文
- 【BZOJ4567】[Scoi2016]背单词 Trie树+贪心
- NET Framework 4.5新特性 (二) 控制台支持 Unicode (UTF-16) 编码
- 爬虫实战【9】Selenium解析淘宝宝贝-获取宝贝信息并保存
- Spoken English Practice(Look, That cute guy is checking me out. come on, give me a break, he's just looking around.)
- Oracle重做日志REDO
- navicat 中执行sql脚本 喊中文错误
- InnoDB缓存读命中率、使用率、脏块率(%) 缓冲池的读命中率(%) 缓冲池的利用率(%) 缓冲池脏块的百分率(%)