Hive Map結構


平時很少用到map類型,這次用到了記錄一下。

適用場景:行轉列,且mid的key個數可能不一樣的情況
舉個栗子:

 1 select 
 2  mid,  3     tags['電影'] as movie,  4     tags['音樂'] as music  5 from(  6     select 
 7  mid,  8         str_to_map(concat_ws(',',collect_list(concat(key,":",value)))) as tags  9     from ( 10         select
11  mid, 12             key, 13             concat_ws('-',collect_list(value))as value 14         from( 15             select 1 as mid,'電影' as key,'驚悚' as value 16             union ALL
17             select 1 as mid,'音樂' as key,'搖滾' as value 18             union ALL
19             select 1 as mid,'電影' as key,'喜劇' as value 20  ) a 21         group by 
22             mid,key
23  )t 24     group by 
25  mid 26 ) tt
 

構造數據:

mid key value
1 電影 驚悚
1 音樂 搖滾
1 電影 喜劇

運行結果:

mid movie music
1 驚悚-喜劇 搖滾

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM