在 TSql 中,如何关闭位掩码中的特定位而不必检查该位是否已设置?
最佳答案
找到了!像这样使用 &~...
UPDATE MyTable SET
MyBitmask = MyBitmask & ~128 -- 8th bit
WHERE MyID = 123
~ 运算符翻转所有位(1s 变成 0s,0s 变成 1s)。只需将要翻转的值设置为要关闭的值,然后使用 & 安全地关闭一个特定的位,而无需检查该位是否已设置。
关于tsql - 如何关闭位掩码中的特定位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2717725/