从Hive导出到文件时替换分隔符

时间:2011-05-17 00:15:27

标签: export delimiter hive

执行INSERT OVERWRITE LOCAL DIRECTORY时是否可以指定要使用的分隔符?

对于列,集合,地图,数组......分隔符的整个开局使用。

显示如何实施的文档或其他内容将是非常棒的。 :)

3 个答案:

答案 0 :(得分:2)

一种简单的方法是使用concat,如果默认的行分隔符\ n适合你,则只使用一个字段:

INSERT OVERWRITE LOCAL DIRECTORY 'output'
SELECT concat(coalesce(field1,''),'\;',
        coalesce(field2,''),'\;',
        coalesce(field3,''),'\;',
        coalesce(field4,''))
FROM MyTable;

这样你就不会有默认的\ 001字段分隔符。

答案 1 :(得分:1)

Hive Jira上有这张票。请参阅https://issues.apache.org/jira/browse/HIVE-634

答案 2 :(得分:1)

使用像

这样的查询
INSERT OVERWRITE LOCAL DIRECTORY '/home/sumit/POC/code/UseCase1' select day, " ",
count(distinct(feature)) from Table_Day_Feature group by day order by day;

在列之间插入“”