------------------ --------1 執行不帶引數的hql檔案----------------------------
hive -f 檔名.字尾
例項:hive -f chensq_test1.hql
------------------ -----2 執行帶1個普通引數的hql檔案----------------------------
----- 直接在hive中執行----
select
count(*
)from 使用者名稱.表名 c
where c.列名 =
'01'
;----- hql檔案內容------------
select
count(*
)from 使用者名稱.表名 c
where c.列名 =
'$';
---- 用命令執行檔案
hive -hiveconf param1=
'01'
-f test_param1.hql
----------------------3 執行帶2個引數的hql檔案----------------------------
----- 直接在hive中執行----
select
count(*
)from 使用者名稱.表名 c
where c.列名1
='01'
and 列名2
='61405'
----- hql檔案內容------------
select
count(*
)from 使用者名稱.表名 c
where c.列名1
='$'
and 列名2
='$'
;---- 用命令執行檔案
hive -hiveconf param1=$'01'
-hiveconf param2=$'61405'
-f test_param2.hql
----- 直接在hive中執行----
select
count(*
)from 使用者名稱.表名 c
where c.date1 <= from_unixtime(unix_timestamp(
)},'yyyy-mm-dd hh:dd:ss'
)and c.date1 >= add_months(from_unixtime(unix_timestamp(),
'yyyy-mm-dd hh:dd:ss'),
-2);
----- hql檔案內容------------
select
count(*
)from 使用者名稱.表名 c
where c.date1 <= from_unixtime(unix_timestamp(
)},'yyyy-mm-dd hh:dd:ss'
)and c.date1 >= add_months(from_unixtime(unix_timestamp(),
'yyyy-mm-dd hh:dd:ss'),
-$);
------用命令執行檔案
hive -hiveconf param2=
2-f test_param3.hql
select
count(*
)from 使用者名稱.表名 a
where a.年月_col <= substr(regexp_replace(string(add_months(from_unixtime(unix_timestamp(),
'yyyy-mm-dd'),
-1))
,'-',''
),1,
6)and a.年月_col >= substr(regexp_replace(string(add_months(from_unixtime(unix_timestamp(),
'yyyy-mm-dd'),
-12))
,'-',''
),1,
6);----- hql檔案內容------------
select
count(*
)from 使用者名稱.表名 a
where a.年月_col <= substr(regexp_replace(string(add_months(from_unixtime(unix_timestamp(),
'yyyy-mm-dd'),
-$))
,'-',''
),1,
6)and a.年月_col >= substr(regexp_replace(string(add_months(from_unixtime(unix_timestamp(),
'yyyy-mm-dd'),
-$))
,'-',''
),1,
6);---- 用命令執行檔案
hive -hiveconf param1=$1
-hiveconf param2=
2-f test_param2.hql
Hive SQL執行原理
hive sql的基本模式可以分為三類 group by語句 比如select city,count oder id as iphone7 count from orders table where day 20170101 and cate name iphone7 group by city h...
HIVESQL優化方法
這是我2年前總結的東西,當時是用華為paas平台的大資料集群的時候,因為我們公司分配的資源較少,自己總結的部分優化方法,如有不足,望大家指正 1 set hive.map.aggr true false 當使用聚合函式時會在ma階段進行聚合 效率更高同時消耗更多資源 2 當join表的時候有乙個大表...
hive sql的執行計畫相關知識
大部分寫的hivesql,最後基本上都可以落到兩個角度 1.單錶分析 group by 聚合函式,2.多表關聯查詢,區別只是有的業務邏輯簡單一些,有的複雜一些而已 執行計畫的生成步驟 其中analyzer會和metainfo進行資訊交換,去做一些關聯查詢校驗的工作 表存不存在,欄位存不存在,字段拼寫...