MySQL按位NOT查询

时间:2017-10-05 08:40:00

标签: mysql bitwise-operators bitmask

我们的数据库中有一个bitmask列,有点像这样 a,b,c,d,e,f,g 其中a:64,b:32等...

否如果我希望用户拥有a,b或c或其中任何组合保存(允许所有其他字段为0或1),我会查询

bit_column_name & 112

因为64 + 32 + 16 = 112

现在我认为排除任何启用了这些选项的用户将是

NOT bit_column_name & 112

但查询结果我似乎并没有加上实际人群。我也尝试了bit_column_name | 112NOT bit_column_name | 112,但这似乎也不合适。

任何想法正确的位查询否定将是什么?

谢谢!

更新: NOT bit_column_name & 112返回的用户只有d或e或f或g,但没有

的组合

1 个答案:

答案 0 :(得分:0)

是的,...... 毕竟人口检查:NOT bit_column & 112是正确的