Hive 是否可以在配置单元中的group by之后连接字符串字段

Hive 是否可以在配置单元中的group by之后连接字符串字段,hive,cloudera-cdh,Hive,Cloudera Cdh,我正在评估配置单元,需要在分组后进行一些字符串字段连接。我发现了一个名为“concat_ws”的函数,但它似乎必须显式列出所有要连接的值。我想知道我是否能用蜂箱里的海螺做这样的事情。这里有一个例子。所以我有一个名为“my_table”的表,它有两个名为country和city的字段。我希望每个国家只有一个记录,每个记录将有两个字段-国家和城市: select country, concat_ws(city, "|") as cities from my_table group by countr

我正在评估配置单元,需要在分组后进行一些字符串字段连接。我发现了一个名为“concat_ws”的函数,但它似乎必须显式列出所有要连接的值。我想知道我是否能用蜂箱里的海螺做这样的事情。这里有一个例子。所以我有一个名为“my_table”的表,它有两个名为country和city的字段。我希望每个国家只有一个记录,每个记录将有两个字段-国家和城市:

select country, concat_ws(city, "|") as cities
from my_table
group by country
这在蜂巢里可能吗?我现在正在使用CDH5的Hive 0.11

在数据库管理中,聚合函数是一种函数,其中多行的值分组在一起作为特定标准的输入,以形成具有更重要意义或度量的单个值,如集合、包或列表

资料来源:

配置单元的开箱即用聚合函数列在以下网页上:

因此,唯一的内置选项是:
数组集合(col)

如果每个
国家/地区都没有重复的
城市
记录,则此项将回答您的请求(返回一组删除了重复元素的对象)。否则,在配置单元外部创建您自己的UDAF或聚合

编写UDAF的参考资料: