博客
关于我
[Hive]Hive指定查询输出分隔符
阅读量:798 次
发布时间:2023-04-02

本文共 661 字,大约阅读时间需要 2 分钟。

业务场景

在进行数据分析工作时,常规的做法是通过Hive命令行工具执行SQL查询,将结果输出到文件中,随后导入Excel等工具处理。然而,当查询结果字段较多时,往往会遇到数据错位问题,这对日常工作来说确实是个不小的麻烦。

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

为了解决字段错位的问题,可以通过Linux管道和文本处理工具来将Tab分隔的数据转换为逗号分隔的数据。以下是具体方法:

# 方法一:使用sed替换Tab为逗号hive -e "select * from pms.pms_algorithm_desc" | sed 's/\t/,/g' > ./aaa.txt# 方法二:使用tr替换Tab为逗号hive -e "select * from pms.pms_tp_config" | tr "\t" ","

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

另一种更高效的解决方案是利用Hive本身的插入功能直接将数据输出到指定目录。以下是详细的操作方法:

insert overwrite local directory '/home/pms/workspace/ouyangyewei/data/bi_lost'  row format delimitedfields terminated by ','  select xxxx from xxxx;

总结

通过上述两种方法,用户可以轻松地将Hive查询结果导出为符合Excel要求的格式,避免了字段错位的问题。选择哪种方法取决于具体需求和Hive版本的支持情况。

转载地址:http://klefk.baihongyu.com/

你可能感兴趣的文章
Ormlite数据库
查看>>
orm总结
查看>>
os.environ 没有设置环境变量
查看>>
os.path.join、dirname、splitext、split、makedirs、getcwd、listdir、sep等的用法
查看>>
os.removexattr 的 Python 文档——‘*‘(星号)参数是什么意思?
查看>>
os.system 在 Python 中不起作用
查看>>
OS2ATC2017:阿里研究员林昊畅谈操作系统创新与挑战
查看>>
OSCACHE介绍
查看>>
SQL--合计函数(Aggregate functions):avg,count,first,last,max,min,sum
查看>>
OSChina 周五乱弹 ——吹牛扯淡的耽误你们学习进步了
查看>>
SQL--mysql索引
查看>>
OSChina 周四乱弹 ——程序员为啥要买苹果手机啊?
查看>>
OSChina 周日乱弹 —— 2014 年各种奇葩评论集合
查看>>
OSChina 技术周刊第十期,每周技术抢先看!
查看>>
OSError: no library called “cairo-2“ was foundno library called “cairo“ was foundno library called
查看>>
OSError: [WinError 193] %1 不是有效的 Win32 应用程序。
查看>>
osgearth介绍
查看>>
OSGi与Maven、Eclipse PlugIn的区别
查看>>
Osgi环境配置
查看>>
OSG——选取和拖拽
查看>>