Sql 对Presto中的所有分组值执行逐位操作

Sql 对Presto中的所有分组值执行逐位操作,sql,aggregate-functions,presto,trino,bitwise-or,Sql,Aggregate Functions,Presto,Trino,Bitwise Or,我需要对所有按值分组的对象执行按位\u或。 比如说,我在一组中的值是:100010和110。我需要计算“100或010或110”,也就是110 所以我想做一些类似的事情:选择col1,按col1从表组中选择array\u agg(col2),然后对数组中的所有col2值应用按位或。有一个函数按位\u或\u agg,但它不适用于数组 感谢您的帮助 是一个聚合函数(返回所有输入值的按位“或”),请使用它代替(或与)数组_agg: select col1, array_agg(col2

我需要对所有按值分组的对象执行
按位\u或

比如说,我在一组中的值是:100010和110。我需要计算“100或010或110”,也就是110

所以我想做一些类似的事情:
选择col1,按col1
从表组中选择array\u agg(col2),然后对数组中的所有col2值应用
按位或
。有一个函数
按位\u或\u agg
,但它不适用于数组

感谢您的帮助

是一个聚合函数(返回所有输入值的按位“或”),请使用它代替(或与)数组_agg:

select col1, 
       array_agg(col2) as my_array, 
       bitwise_or_agg(col2) as my_array_bitwise_or
  from table group by col1

啊!非常感谢你的帮助!