如何基于json中的一个字段对两个表进行配置单元连接?

0x6upsns  于 2021-06-27  发布在  Hive
关注(0)|答案(1)|浏览(385)

所以我创建了两个这样的表:

create external table test1 (json string) stored as textfile location '/user/data/test1';
create external table test2 (json string) stored as textfile location '/user/data/test2';

这两个表都有一个字符串列,其中包含一个json对象。
下面是我如何对一个名为 name 从表格中:

select get_json_object(json, '$.name') from test1 limit 1;

…使用 get_json_object 用于解析json字符串的配置单元的udf。
现在,我需要基于 name json对象中的字段。我怎样才能做到这一点?

wwwo4jvm

wwwo4jvm1#

select t1.*, t2.* --select columns needed
from
    (select t1.*, get_json_object(json, '$.name') as name from test1 t1) t1 --add more filters
    left join 
    (select t2.*, get_json_object(json, '$.name') as name from test2 t2) t2 --add more filters
    on t1.name=t2.name

相关问题