Группировка строк hive в массиве этих строк
у меня есть таблица так :
User:String Alias:String
JohnDoe John
JohnDoe JDoe
Roger Roger
и я хотел бы сгруппировать все псевдонимы пользователя в массиве, в новой таблице, которая будет выглядеть так:
User:String Alias:array<String>
JohnDoe [John, JDoe]
Roger [Roger]
Я не могу понять, как это сделать с HiveQL.Должен ли я написать UDF для этого ?
спасибо !
1 ответов
Проверьте встроенная статистическая функция collect_set
.
select
User,
collect_set(Alias) as Alias
from table
group by User;