1

MySQLクエリ間でビット単位のORを実行できるかどうか疑問に思っています。私は次のようなクエリを持っています:

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

4

1 に答える 1

6
SELECT MAX(@r:=@r|value) FROM `table`, (SELECT @r:=0) x

Jim.Hの提案ははるかに優れています。ありがとう!

SELECT BIT_OR(value) FROM `table`
于 2011-11-09T16:24:24.117 に答える