HIVE SQL通过Lateral View + explode实现列转行

原表:

a b
Andy <碟中谍>,<谍影重重>,<007>
MOMO <小鞋子>,<朋友啊你的家在哪里>

实现效果

a b
Andy <碟中谍>
Andy <谍影重重>
Andy <007>
MOMO <小鞋子>
MOMO <朋友啊你的家在哪里>

实现代码:

sql 复制代码
select a 
	,film_list
from tb_name
lateral view explode(split(b,',')) t as film_list
;

注:explode函数:处理map结构的字段,将数组转换成多行,所以此处使用了split函数将b列转为array数组类型。

相关推荐
动力 continue10 小时前
MySQL 基础篇 · SELECT 查询大
数据库·sql·mysql·select
先吃饱再说13 小时前
后端开发绕不开的 SQL:从建表、查询到索引优化,一篇讲透
数据库·后端·sql
fastjson_14 小时前
Hive 复杂数据类型
数据仓库·hive·hadoop
陈年老古董15 小时前
Shell 脚本编程基础完整学习笔记
linux·sql·mysql
冰暮流星17 小时前
MySQL 流程函数详解
数据库·sql·mysql
起名真的太难了18 小时前
Mysql的数据类型,查询与备份操作
数据库·sql·mysql
hopsky20 小时前
《Hive性能调优实战》核心内容详细解读
数据仓库·hive·hadoop
circuitsosk1 天前
NL2SQL在工业级场景下的精度优化:Schema Linking + 动态Few-shot实战
人工智能·python·sql·大模型·nl2sql
好好学习的星熊1 天前
SQL 面试题(数据分析师)
sql·mysql