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