(1)select基礎
(2)cte和巢狀查詢
(3)高階語句
(4)關聯查詢
(5)mapjoin
(1)load移動資料
(2)insert表插入資料
使用insert語句將資料插入表/分割槽
(insert 支援overwrite覆蓋和into追加)
hive支援從同乙個表進行多次插入
insert into中table關鍵字是可選的
insert into可以指定插入到哪些欄位中
(如:insert into t(x,y,z))
insert into table_name values,支援插入值列表
資料插入必須與指定列數相同
insert overwrite table test select 'hello'
;-- insert不支援的寫法
insert into employee select * from ctas_employee;
-- 通過查詢語句插入
-- 多插入
from ctas_employee
insert overwrite table employee select *
insert overwrite table employee_internal select *
;-- 插入到分割槽
from ctas_patitioned
insert overwrite table employee partition (year, month)
select *
,'2018'
,'09'
;-- 通過指定列插入(insert into可以省略table關鍵字)
insert into employee
(name) select 'john' from test limit 1
;-- 通過指定值插入
insert into employee
(name)
value
('judy'),
('john'
);
(3)資料插入檔案
-- 從同一資料來源插入本地檔案,hdfs檔案,表
from ctas_employee
insert overwrite local directory '/tmp/out1' select *
insert overwrite directory '/tmp/out1' select *
insert overwrite table employee_internal select *
;-- 以指定格式插入資料
insert overwrite directory '/tmp/out3'
row format delimited fields terminated by ','
select * from ctas_employee;
-- 其他方式從表獲取檔案
hdfs dfs -getmerge
(4)資料交換 - import/export
(5)資料排序
(5)聚合運算
Hive總結(十二)Hive查詢高階
通過hive提供的order by子句可以讓最終的輸出結果整體有序。但是因為hive是基於hadoop之上的,要生成這種整體有序的結果,就必須強迫hadoop只利用乙個reduce來完成處理。這種方式的 就是回降低效率。如果你不需要最終結果整體有序,你就可以使用sort by子句來進行排序。這種排序...
Hive高階查詢練習02
一 求每一年最大氣溫的那一天 溫度 1 說明 資料格式 2010012325 2014010114 2014010216 2014010317 2014010410 2014010506 2012010609 2012010732 2012010812 2012010919 2012011023 2...
hive 9 hive高階查詢之join
join原理 join的優化 官網位址 hive支援傳統資料庫沒有的 select u.name,o.orderid from order o join user u on o.uid u.uid map join在map階段完成,沒有shuffle和reduce階段。mapjoin簡單來說就是 當...