Hive的collect_set、named_struct在Denodo VQL中的等效函数查询
Denodo VQL 等效实现方案
你的Hive查询是按acc分组,将每组的acc、name、age构造为结构体后去重收集为数组。在Denodo VQL中可以这样实现:
SELECT acc, array_agg_distinct(row(acc, name, age)) FROM your_table GROUP BY acc
关键函数对应说明:
- Hive的
collect_set→ Denodo的array_agg_distinct:两者都是分组后对指定字段/表达式去重并收集为数组。 - Hive的
named_struct('acc', acc, 'name', name, 'age', age)→ Denodo的row(acc, name, age):row函数会创建一个包含指定字段的记录类型,和Hive的结构体语义一致。如果需要给结构体的字段显式命名,可以写成:row(acc AS acc, name AS name, age AS age)
内容的提问来源于stack exchange,提问作者newbie
相关产品推荐
相关产品推荐

