日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Hive _偏门常用查询函数(一)附带实例(空字段赋值、 CASE WHEN、行转列)

發布時間:2024/2/28 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hive _偏门常用查询函数(一)附带实例(空字段赋值、 CASE WHEN、行转列) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

空字段賦值

  • 函數說明

NVL:給值為NULL的數據賦值,它的格式是NVL( string1, replace_with)。它的功能是如果string1為NULL,則NVL函數返回replace_with的值,否則返回string1的值,如果兩個參數都為NULL ,則返回NULL。

  • 數據準備:采用員工表
01 george 100.00 02 george 0.00 03 george 0.00 04 george 110.00 05 george 170.00 06 kkkkk 180.00 07 george 0.00 08 george 90.00 09 didi

?

  • 查詢:如果員工的comm為NULL,則用-1代替
create table emp(id int,name string,comm double) row format delimited fields terminated by ' ';load data local inpath "/root/emp" into table emp; select nvl(comm,-1) from emp;

?


?CASE WHEN

數據準備:

悟空 A 男 大海 A 男 宋宋 B 男 鳳姐 A 女 婷姐 B 女 婷婷 B 女

建表:

create table emp_sex( name string, dept_id string, sex string) row format delimited fields terminated by "\t"; load data local inpath "/root/emp_sex" into table emp_sex;

要求:求出不同部門男女各多少人?

select dept_id,sum(case sex when '男' then 1 else 0 end) male_count,sum(case sex when '女' then 1 else 0 end) female_count from emp_sex group bydept_id;

結果:


行轉列

1.相關函數說明

CONCAT(string A/col, string B/col…):返回輸入字符串連接后的結果,支持任意個輸入字符串;

CONCAT_WS(separator, str1, str2,...):它是一個特殊形式的 CONCAT()。第一個參數剩余參數間的分隔符。分隔符可以是與剩余參數一樣的字符串。如果分隔符是 NULL,返回值也將為 NULL。這個函數會跳過分隔符參數后的任何 NULL 和空字符串。分隔符將被加到被連接的字符串之間;

COLLECT_SET(col):函數只接受基本數據類型,它的主要作用是將某字段的值進行去重匯總,產生array類型字段。

2.數據準備

孫悟空 白羊座 A 大 射手座 A 宋宋 白羊座 B 豬八戒 白羊座 A 鳳姐 射手座 A

創表:

create table person_info( name string, constellation string, blood_type string) row format delimited fields terminated by "\t"; load data local inpath "/root/con" into table person_info;

需求:把星座和血型一樣的人歸類到一起

selectt1.base,concat_ws('|', collect_set(t1.name)) name from(selectname,concat(constellation, ",", blood_type) basefromperson_info) t1 group byt1.base;

結果:

?

總結

以上是生活随笔為你收集整理的Hive _偏门常用查询函数(一)附带实例(空字段赋值、 CASE WHEN、行转列)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。