结果之间的按位或
Posted
技术标签:
【中文标题】结果之间的按位或【英文标题】:Bitwise OR among results 【发布时间】:2011-11-09 16:08:32 【问题描述】:我想知道是否可以在 mysql 查询中进行按位或。我有一个类似的查询:
SELECT `value` FROM `table` WHERE `code`='4'
它返回一个值数组,但我想要一个具有所有值的 按位 OR 的唯一值。是否可以从 MySQL 或我应该委托给 php?
即上面的查询返回这个值列表:
value
-----
1
5
4
2
7
8
因此我想要这些值的 OR 1 | 5 | 4 | 2 | 7 | 8 = 15
【问题讨论】:
重复或类似:***.com/questions/1397913/… SQL 查询不返回“数组”。 【参考方案1】:SELECT MAX(@r:=@r|value) FROM `table`, (SELECT @r:=0) x
Jim.H 的建议要好得多。谢谢!
SELECT BIT_OR(value) FROM `table`
【讨论】:
聪明,但 eww。SELECT bit_or(value) FROM table;
以上是关于结果之间的按位或的主要内容,如果未能解决你的问题,请参考以下文章
python中的按位与 +按位或+ 按位反+异或运算 +左移+右移