首页 > 解决方案 > 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"}} 已满 \n

A3D91EAFW36ZGY {"IT":{"s":"VERIFIED"}} 已满 \n

A338I5YPDUCU3R {"DE":{"s":"VERIFIED"}} 已满 \n

如何从每一行中删除 \n?

标签: sqlhive

解决方案


如果最后一列值已'\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);

推荐阅读