应用bitewise和/或整个列SQL

时间:2015-09-03 12:26:55

标签: mysql sql

有没有办法在MySQL的整个列上应用按位运算? 例如: 我们有一个名为“flags”的列,它包含8位整数, 我想知道哪些标志在所有行上“打开”。 有没有办法做到这一点? 感谢。

2 个答案:

答案 0 :(得分:2)

有一些名为BIT_OR()BIT_AND()的汇总函数。

要查找每行中打开的位,请使用BIT_AND(flags)它会生成仅包含所需位的结果。 (http://sqlfiddle.com/#!9/3169d/4/0

 SELECT BIT_AND(flags) AS bits_set_in_every_row
   FROM table

并获得您寻求的结果。

答案 1 :(得分:0)

为每个标志应用整个列。
否则你会损坏s argability加上索引会更大。