hive输出json字符串
目前没发现有什么方便的函数可以直接使用,只能使用concat来手工拼接。
注意将null的字段值转为空,使用nvl函数
-
如果将hql语句写在script.q文件里面如下:
select concat('{"data_dt":"',a.data_dt, '","user":"',NVL(a.`user`, ''), '","click":"',NVL(a.click, ''), '"}') as value from table a;
-
如果直接使用hive -e参数时,需要将双引号转义
select concat('{\"data_dt\":\"',a.data_dt, '\",\"user\":\"',NVL(a.`user`, ''), '\",\"click\":\"',NVL(a.click, ''), '\"}') as value from table a;
本文来自博客园,作者:硅谷工具人,转载请注明原文链接:https://www.cnblogs.com/30go/p/8954140.html