仅当两个操作数都设置了64位时,才会执行按位与运算并返回64。
就是这个场景。我在表中有一个列"标志"。该列以十进制形式存储32位二进制数。例如,00000000000000000000000000000010存储为2。我需要显示表中的所有记录,其中存储在"标志"中的值的第26位被设置为"1"。我如何为此目的编写sql查询?
试试这个:
select * from tablename
where (flag & 64) = 64
第26位对应2 ^ 6 = 64的位。在SQL Server上,&