Hive sql 常用的一些方法

2021-10-07 19:23:30 字數 849 閱讀 4955

1、插入資料

insert into 附加;

insert overwrite 清空原資料,再插入,最終表中只有插入的資料。

2、字串擷取函式split

正常使用

split(

'a,b,c,d',','

)得到的結果:

["a","b","c","d"

]

當遇到特殊字元

"." 點

split(

'192.168.0.1','.'

)得到的結果:

正確的寫法:

split(

'192.168.0.1','\\.'

)得到的結果:

["192","168","0","1"

]當split包含在 "" 之中時 需要加4個\

如 hive -e ".... split('192.168.0.1','\\\\.') ... "

不然得到的值是null

3、空值判斷

空值/非空知判斷: is null

select * from tbl where name is null;

select * from tbl where name is not null;

4、group by

按照某個key 分組

select * from tbl group by name;
5、測試優化sql語句

explain sql語句

會列舉sql的查詢過程

通過觀察sql過程 同時進行優化;

hiveSql的一些問題

一 hive的小需求有如下訪客訪問次數統計表 t access times 訪客 月份訪問次數 a2015 01 a2015 01 b2015 01 a2015 01 b2015 01 a2015 01 a2015 02 a2015 02 b2015 02 b2015 02 需要輸出報表 t acc...

Hive sql和Presto sql的一些對比

最近由於工作上和生活上的一些事兒好久沒來了,但是寫部落格的習慣還是得堅持,新的一年需要更加努力,困知勉行,終身學習,每天都保持空杯心態.廢話不說,寫一些最近使用到的presto sql和hive sql的體會和對比.注意這裡presto中json extract scalar返回值是乙個string...

CString的一些常用方法

cstringleft int ncount const 從左邊1開始獲取前ncount 個字元 cstringmid int nfirst const 從左邊第ncount 1 個字元開始,獲取後面所有的字元 cstringmid int nfirst,int ncount const 從左邊第n...