Обръщането на малко се извършва чрез XOR ^
операция с маска, която има 1
s в позиции, които искате да превключите.
Това работи, защото таблицата на истинността на XOR изглежда така:
A: 0 0 1 1
B: 0 1 0 1
A^B: 0 1 1 0
Обърнете внимание на колоните, където B
е 1
:когато съответният бит в A
е нула, резултатът е единица и обратно.
Превключването на седмия бит се извършва по следния начин:
UPDATE numbers SET numb = numb ^ b'0001000000';