我正在解析来自api的数据,该api以json格式返回有关产品的数据。我有一张Hive桌 json_message_table
在表的一行中有每个json消息。我想用这些信息填充配置单元表,并需要分解json结构。
结构是这样的。
{product_name : ... , meta : { product_structure : { sub_product_1 : {...},sub_product_2 : { ... } ... }}
我以前在类似情况下所做的是
SELECT b1.product_name as ProductName,
b3.product_structure as ProductStructure
FROM json_message_table a
LATERAL VIEW json_tuple(a.messages,'product_name') b1 as product_name
LATERAL VIEW json_tuple(a.messages,'meta') b2 as meta
LATERAL VIEW json_tuple(b2.meta,'product_structure') b3 as product_structure;
我的问题是钥匙的名字 sub_product_1,sub_product_2
对于每个json对象都是不同的,它们可以被调用任何东西,所以我不能指定它们将被调用什么,因此不知道如何使用 LATERAL VIEW
以及 json_tuple
分析它们。
我想要的是解析product\u structure json中的每个字段,而不管键名是什么,然后继续解析各自json中的元数据。有办法吗?
暂无答案!
目前还没有任何答案,快来回答吧!