Tsql 如何关闭位掩码中的特定位?

Tsql 如何关闭位掩码中的特定位?,tsql,Tsql,在TSql中,如何在不必检查位是否已设置的情况下关闭位掩码中的特定位?找到了它!像这样使用&~ UPDATE MyTable SET MyBitmask = MyBitmask & ~128 -- 8th bit WHERE MyID = 123 ~运算符翻转所有位(1变为0,0变为1)。只需设置您翻转到要关闭并使用的值,即可安全地关闭一个特定位,而无需检查该位是否已设置。您还可以使用: MyBitmask&=~128

在TSql中,如何在不必检查位是否已设置的情况下关闭位掩码中的特定位?

找到了它!像这样使用&~

UPDATE MyTable SET
        MyBitmask = MyBitmask & ~128 -- 8th bit
    WHERE MyID = 123
~运算符翻转所有位(1变为0,0变为1)。只需设置您翻转到要关闭并使用的值,即可安全地关闭一个特定位,而无需检查该位是否已设置。

您还可以使用: MyBitmask&=~128