我有一张表存储访问权限,使用位掩码:
0
无权限1
普通用户权限2
超级用户权限
我想查询所有拥有普通用户权限
和超级用户权限
的账户,我认为:
SELECT * FROM "accounts" WHERE "privileges" & 3;
可以使用这种方法,但也会返回所有普通用户(1
)的帐户。我可以看出这是正确的原因是:
1 (01)
& 3 (11)
-----------
= 1 (01)
我记得在MySQL中很容易做到这一点,但在此期间我忘记了如何操作。
我认为解决方案可能很简单,有人能给我一个提示吗?
"privileges" & 3
的结果是否真的等于3。 - Michael Liu0
),感谢您的帮助,随时欢迎您将您的评论发布为答案,以便我接受它。 - Alix Axel