正常情況下,登錄Hive,輸入HQL,然后輸出數據,復制粘貼到Excel里面稍微美化一下即可,但這種方式只是適用於行數比較少的情況。行數較多時可以參照以下方式:
方法一:將數據以文件格式保存至本地
分為兩步:把數據存到Linux服務器,從Linux服務器復制文件到本地windows
#第一步:把數據存到Linux服務器
兩種操作方式:
01.insert方式(有風險),在hive> 下執行,HSQL如下:
insert overwrite local directory 'linux本地目錄' row format delimited terminated fields by ',' select * from table_name where .....;
注意:這種方法會將linux本地目錄的所有內容全部覆蓋.盡量自己先新建一個數據存放的目錄!!!
02.hive -e 的操作方式
hive -e "select * from table_name where .... " > /home/outData/0321.txt
#第二步:從Linux服務器復制文件到本地windows
sz命令:如果沒有則安裝(yum -y install lrzsz)
下載多多個文件:sz file1 file2 ...
下載dir目錄下所有的文件:sz dir/*
方法二:存入HDFS或者臨時表
# 存入HDFS
insert overwrite directory 'hdfs路徑' select * from table_name where .....;
注意:與保存到本地的區別就是不指定Local項。
# 存入臨時表
create table tmp as slect * from table_name where ....;
方法三:更改 Xshell 可以顯示的最大行數


更改完成后,重啟Xshell,並運行SQL代碼,然后直接復制即可。 原文鏈接
