Hiveでgroup concat機能を実現(udfを使用しない)


hive> desc t;
OK
id      string
str     string
Time taken: 0.249 seconds
hive> select * from t;
OK
1       A
1       B
2       C
2       D
Time taken: 0.209 seconds

 
Hive 0.9で使用可能:
 
SELECT id,concat_ws('|', collect_set(str)) FROM t  GROUP BY id;
結果:
 
1 A|B
2 C|D
 
しかしhive 0では7では実現しにくい、concat_ws関数はArrayをサポートしていません.