Hive 的collect_set使用詳解


Hive 的collect_set使用詳解

  select a,collect_set(b) as bb from t where b<='xxxxxx' group by a

會按照a分組 通過collect_set會把每個a所對應的b構建成一個以逗號分隔的數組返回。上述SQL返回:

a1,["b1","b2"]

a2,["b1","b2","b3","b4"] 

 可以按照這個返回的數組做文章,即為

select * from (select a,collect_set(b) as bb from t where b<='xxxxxx' group by a)  where size(tmp.bb)=1 and tmp.bb[0]='xxxxxxxx';

表示某bb所對應的數組長度為1 並且第一個bb為xxxxxxxx的a


免責聲明!

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



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