您好我正在使用SQL Server Management Studio,并且需要对按位操作进行一些调整。
我有确定用户访问权限的某些值,例如
1 - 查看文档 2 - 查看对象 4 - 查看规则 8 - 编辑文档 16 - 编辑对象 32 - 编辑规则 64 - 删除文件 128 - 删除对象 256 - 删除规则。
当前在数据库中,用户访问权限的值作为按位运算符存储在数据库中 例如73 - 这意味着用户可以查看,文档,编辑,文档和删除文档。
如何编写查询以显示用户详细信息并解释存储在accessRights字段中的整数以显示:
“查看文档”+“编辑文档”+“删除文档”
在自定义列“用户”权限中。
当访问级别= 1“One的属性”时我尝试使用这种情况......当访问级别等于2“两个属性”时...当访问级别等于3“Ones Properties”+“Two's properties”
由于
答案 0 :(得分:1)
由于性能原因,我不推荐它(例如,如果必须对列执行按位类型操作,则不能使用索引进行查询)...
但SQL中的按位OR(好吧,T-SQL / Sql Server)是|
,按位是&
。