Hive Join查询在每行中添加 n

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hive Join查询在每行中添加 n相关的知识,希望对你有一定的参考价值。

在Hive中,我使用Left Outer Join连接2个表。加入后,我可以在每行的末尾看到' n'。我的查询看起来像

SELECT o1.merchantid, o1.countriesvrnstatus, o1.sellerofferlevelvcsconfigstatus, o2.programs
FROM ${input1} o1 LEFT OUTER JOIN ${input2} o2 
ON (o1.merchantid = o2.merchantid);

输出看起来像这样

AJEJ61SA2GGJN {“AT”:{“s”:“VERIFIED”}} FULL n

A3D91EAFW36ZGY {“IT”:{“s”:“VERIFIED”}}全 n n n n

A338I5YPDUCU3R {“DE”:{“s”:“VERIFIED”}}全 n n n

如何从每行中删除 n?

答案

如果最后一列值具有' ',则在最后一列使用regex_replace(column_name,'\n','')

SELECT 
       o1.merchantid, 
       o1.countriesvrnstatus, 
       o1.sellerofferlevelvcsconfigstatus, 
       regex_replace(o2.programs,'\n','')
FROM ${input1} o1 LEFT OUTER JOIN ${input2} o2 
ON (o1.merchantid = o2.merchantid);

以上是关于Hive Join查询在每行中添加 n的主要内容,如果未能解决你的问题,请参考以下文章

hive的join优化

Hive 查询优化总结

Hive 查询优化总结

Hive 中带有 Join 或 Where 子句的条件

Hive的join表连接查询的一些注意事项

Hive学习04-查询 分组 join 排序