012-HQL中级2-Hive如何执行文件中的sql语句

Hive可以运行保存在文件里面的一条或多条的语句,只要用-f参数,一般情况下,保存这些Hive查询语句的文件通常用.q或者.hql后缀名,但是这不是必须的,你也可以保存你想要的后缀名。假设test文件里面有一下的Hive查询语句:

select * from p limit 10;
select count(*) from p;

那么我们可以用下面的命令来查询:

[wyp@wyp hive-0.11.0-bin]$ bin/hive -f test

........这里省略了一些输出...........

OK
196        242        3        881250949        20131102        jx
186        302        3        891717742        20131102        jx
22        377        1        878887116        20131102        jx
244        51        2        880606923        20131102        jx
166        346        1        886397596        20131102        jx
298        474        4        884182806        20131102        jx
115        265        2        881171488        20131102        jx
253        465        5        891628467        20131102        jx
305        451        3        886324817        20131102        jx
6        86        3        883603013        20131102        jx
Time taken: 4.386 seconds, Fetched: 10 row(s)

........这里省略了一些输出...........

OK
4000000
Time taken: 16.284 seconds, Fetched: 1 row(s)

如果你配置好了Hive shell的路径,你可以用SOURCE命令来运行那个查询文件:

[wyp@wyp hive-0.11.0-bin]$ hive
hive> source /home/wyp/Documents/test;

........这里省略了一些输出...........

OK
196        242        3        881250949        20131102        jx
186        302        3        891717742        20131102        jx
22        377        1        878887116        20131102        jx
244        51        2        880606923        20131102        jx
166        346        1        886397596        20131102        jx
298        474        4        884182806        20131102        jx
115        265        2        881171488        20131102        jx
253        465        5        891628467        20131102        jx
305        451        3        886324817        20131102        jx
6        86        3        883603013        20131102        jx
Time taken: 4.386 seconds, Fetched: 10 row(s)

........这里省略了一些输出...........

OK
4000000
Time taken: 16.284 seconds, Fetched: 1 row(s)
原文地址:https://www.cnblogs.com/bjlhx/p/6946289.html