我有一个4列的表,一列(项)类型是ARRAY,其他是字符串.
ID | items | name | loc
_________________________________________________________________
id1 | ["item1","item2","item3","item4","item5"] | Mike | CT
id2 | ["item3","item7","item4","item9","item8"] | Chris| MN
.
.
Run Code Online (Sandbox Code Playgroud)
在这里,我想要非标准化的输出
ID | items | name | loc
______________________________________________________
id1 | item1 | Mike | CT
id1 | item2 | Mike | CT
id1 | item3 | Mike | CT
id1 | item4 | Mike | CT
id1 | item5 | Mike | CT
id2 | item3 | Chris | MN
id2 | item7 | Chris | MN
id2 | item4 | Chris | MN
id2 | item9 | Chris | MN
id2 | item8 | Chris | MN
Run Code Online (Sandbox Code Playgroud)
我不是Hive SQL专家,请帮我解决这个问题.
试试这个:
SELECT ID,itemsName,name,loc
FROM Table
LATERAL VIEW explode(items) itemTable AS itemsName;
Run Code Online (Sandbox Code Playgroud)
在explode(items)中,items是你存储的表列,Table是你的Stored表.