hivesql导出本地文件

hivesql导出本地文件

介绍

做数据分析的时候,经常会用到hive -e "sql" > xxx.txt或者最原始的hive命令行来获得查询结果,然后再将查询结果放到Excel等工具中,但是如果查询的字段太多,这时候将查询结果放到Excel会经常会碰到错位问题,很是头疼.

解决方案一:借助linux管道替换输出分隔符

样例如下:

# 方法一:sed

hive -e "select * from db.table_name" | sed 's/\t/,/g' > ./abc.txt

 

# 方法二:tr

hive -e "select * from db.table_name" | tr "\t" ","

 

结果查看如下:

$ cat abc.txt 

解决方案二:借助Hive的insert语法

代码如下:

insert overwrite local directory 'path'
row format delimited
fields terminated by ','
select xxxx 
from xxxx;

上面的sql将会把查询结果写到指定目录中,字段之间以‘,’分隔

结果如下:

$ ls path
000000_0
 

官方介绍:

Standard syntax:
INSERT OVERWRITE [LOCAL] DIRECTORY directory1
  [ROW FORMAT row_format] [STORED AS file_format] (Note: Only available starting with Hive 0.11.0)
  SELECT ... FROM ...
 
Hive extension (multiple inserts):
FROM from_statement
INSERT OVERWRITE [LOCAL] DIRECTORY directory1 select_statement1
[INSERT OVERWRITE [LOCAL] DIRECTORY directory2 select_statement2] ...
row_format
  : DELIMITED [FIELDS TERMINATED BY char [ESCAPED BY char]] [COLLECTION ITEMS TERMINATED BY char]
        [MAP KEYS TERMINATED BY char] [LINES TERMINATED BY char]
        [NULL DEFINED AS char] (Note: Only available starting with Hive 0.13)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119632.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux命令速查手册出炉!

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 来源:MarkerHub 查看Linux系统信息 arch    &nbsp…

    2021年6月26日
    91
  • mysql 字符串转数字并排序

    mysql 字符串转数字并排序使用二级查询首先将字符串的列转成数字,然后排序select*from (selectCONVERT(k.key,SIGNED)askid,pathfromkpvk)tORDERBYt.kidasc;

    2022年5月30日
    45
  • 基于android点餐系统需求分析,基于Android的点餐系统的设计及实现

    基于android点餐系统需求分析,基于Android的点餐系统的设计及实现内容简介:基于Android的点餐系统的设计及实现,毕业论文,共58页,20083字,附开题报告、答辩文稿、源程序。摘要随着无线网络(如4G、3G、GPRS)及无线网络技术与移动操作系统的不断发展,移动生活逐渐成为社会的主流。现如今,许多餐饮企业仍然采用传统人工式服务,使服务质量、效率变得很差。为了改变这一现状,本设计将介绍一种基于Android的无线点餐系统。这种点餐系统包括服务器端与客户端,…

    2022年6月19日
    25
  • gcc rpm安装

    gcc rpm安装复制以下RPM包到某个目录compat-gcc-32-3.2.3-47.3.i386.rpmcompat-gcc-32-c++-3.2.3-47.3.i386.rpmcpp-3.4.6-3.i386.rpmgcc-3.4.6-3.i386.rpmgcc-c++-3.4.6-3.i386.rpmgcc-g77-3.4.6-3.i386.rpmgcc-gnat-3.4.6-…

    2022年6月3日
    160
  • Flowable数据库

    Flowable数据库Flowable数据表清单:Flowable的所有数据库表都以ACT_开头。第二部分是说明表用途的两字符标示符。服务API的命名也大略符合这个规则。ACT_RE_*:’RE’代表repository。带有这个前缀的表包含“静态”信息,例如流程定义与流程资源(图片、规则等)。ACT_RU_*:’RU’代表runtime。这些表存储运行时信息,例如流程实例(proces…

    2022年5月11日
    30
  • dhcp的option82_dhcp option

    dhcp的option82_dhcp optionISCDHCPandoption82TheRelayAgentInformationOptionakaOption82OnDSLaccessnetworksthatuseDHCPtoassignanIPaddresstotheenduser,itisusualthatsomenetworkeleme…

    2022年10月10日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号