oracle 某一字段取反

--某一位取反
select id ,flag,(flag + 1) - BITAND(flag, 1) * 2 from SYS_INFO t

UPDATE SYS__INFO SET FLAG=((flag + 1) - BITAND(flag, 1) * 2) Where id=105

--与两真才为真

BITAND(X,Y)

--或 一个为真则为真
BITOR(x,y) = (x + y) - BITAND(x, y);
--异或 不同则为真
BITXOR(x,y) = BITOR(x,y) - BITAND(x,y) = (x + y) - BITAND(x, y) * 2;

原文地址:https://www.cnblogs.com/xiaochun126/p/6347807.html