美文网首页
[Hive]格式化输出 Hive 查询结果到 Excel

[Hive]格式化输出 Hive 查询结果到 Excel

作者: 帅可儿妞 | 来源:发表于2019-11-18 15:27 被阅读0次
  1. 首先把数据查出来, 并按照执行的分隔符分割
    set hive.cli.print.header=true;
    set hive.resultset.use.unique.column.names=false;
    insert overwrite local directory '<local-dirrectory>'
    row format delimited
    fields terminated by '<your-delimiter>'
    <select-statement>;
    
  2. 把结果文件传入脚本运行(待优化):
    hive_2_excel.py <path>/0000_0
    

首先说明一下, 上面第 1 步导出操作的文件名是系统自己定义的, 而且可能生成多个文件, 部分文件是空的, 这个就不是我们需要的了, 如果你不想这样, 想自己定义输出的文件名, 那么就可以利用Linux 的重定向解决这个问题

hive -f <hql-file> > <ouput-file>

问题又来了, 如果我使用了重定向的方式自然也就无法使用 HiveSQL 的查询指定分隔符的语法, 分隔符怎么自定义呢?

hive -f <hql-file> | sed 's/\t/<your-seperator>/g' > <ouput-file>

或者

hive -f <hql-file> | tr "\t" "<your-seperator>" > <ouput-file>

注意一下, 在第一行的 SQL 中添加了两行:

set hive.cli.print.header=true;
set hive.resultset.use.unique.column.names=false;

其目的是在SQL 执行结果的时候生成表头, 那么在导入 Excel 的时候, 就没有必要定制表头了, 数据中天然携带


相关文章

  • [Hive]格式化输出 Hive 查询结果到 Excel

    首先把数据查出来, 并按照执行的分隔符分割set hive.cli.print.header=true;set h...

  • Hive 环境搭建

    Hive配置 首先要安装Hadoop、MySQL Hive其他配置 查询结果显示列名 显示所在数据库:hive(d...

  • 5.Hive其他知识点

    5.1Hive Lateral View 5.2Hive 视图 查询到的数据放在一张虚拟表中; 5.3Hive 索...

  • Hive进阶

    hive配置,命令 hive查询显示列名 hive默认分隔符 \001 hive命令行中查看当前hive环境变量 ...

  • hive基础语法

    目录 Hive安装和启动 Hive表操作-分区表 Hive表操作-复杂类型操作 Hive 查询语句 Zepplin...

  • 大数据开发之Hive篇5-Hive数据查询语言

    备注:Hive 版本 2.1.1 一.Hive SELECT(数据查询语言)概述 select语句是Hive中使用...

  • Hive简介

    1. Hive提供了一个被称为hive查询语言的的SQL方言,来查询存储在Hadoop集群中的数据。 Hive可以...

  • Hive编程指南读书笔记0001

    Hive概述 1.Hive提供了一个被称为Hive查询语言(简称HiveQL或HQL)的SQL方言,来查询存储在H...

  • hive排序总结

    HIVE 排序总结 ORDER BY Hive中的order by语句用于对查询结果集执行一个全局排序。这也就是说...

  • MapReduce练习(一)

    注:测试数据在最后 写一个map-reduce,输出结果和下面的Hive查询语句相同 1. select * fr...

网友评论

      本文标题:[Hive]格式化输出 Hive 查询结果到 Excel

      本文链接:https://www.haomeiwen.com/subject/gtkbictx.html