是否可以在hive中执行按位分组函数?

toiithl6  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(534)

如何执行类似mysql的按位或配置单元查询。例如,在mysql中,我们按位或执行: SELECT user_name, BIT_OR(file_permission) FROM user_permission GROUP BY user_name

tkqqtvp1

tkqqtvp11#

配置单元中有位或运算符:
a | b级
操作数类型:所有数字类型
给出a和b按位或的结果。结果的类型与操作数类型的公共父级(在类型层次结构中)相同。
但是,从代码示例来看,似乎需要一个聚合位or函数(udaf)。这种聚合函数在Hive中并不容易存在。您必须实现一个定制的udaf。
另一个效率较低但更简单的选择是:您可以使用 collect_list 并实现一个简单的udf,它对数组的所有元素执行按位或运算。

相关问题