我在Hive中有一个表A,其中一列a1包含json。
Table A
Columns - a1
例如,a1列中的json有5个属性(j1,j2,j3,j4,j5)。
我需要将表A中的数据加载到另一个表B.
Table B
Columns - b1, b2, b3, b4, b5
将数据从A加载到B的规则如下,
b1 - j1
b2 - j2
b3 - j3
b4 - a1 (entire column of A)
如何做到这一点?
可能需要将数据从B加载到另一个表C.
Today C
Columns - c1, c2, c3
c1,c2,c3加载来自B列b1,b2,b3的数据
c1 - b1
c2 - b2
c3 - b3
但是可能需要将另一列c4添加到C中,而c4必须从B列b4中加载一个json属性(j4)。
c1 - b1
c2 - b2
c3 - b3
c4 - one of the json attributes from column b4 of B
这可能吗?如果是的话,你能给我一些指示吗?
任何其他解决方案也没问题。我想要的只是将JSON存储在历史记录中,以便以后可以检索其属性。在上面的示例中,表A是临时表,因此是临时的。
答案 0 :(得分:0)
Hive有一个名为get_json_object
的UDF。
它可以使用
的json路径