Булевская переменная MySQL - зеркальное отражение значения?

MySQL использует TinyINT для служения в качестве булева поля. Учитывая возможные варианты 0 и 1, я решил, что зеркально отражу значения как это:

UPDATE table
SET boolean_field = ABS(boolean_field - 1)
WHERE Circle-K = 'Strange things are afoot'

Так Вы любое движение 1-> 0-> ABS (0) = 0

или 0->-1-> ABS (-1) = 1

теперь мне любопытно, если это приемлемо или ужасающе настоящим программистам?

/me новичок

18
задан Drew 16 August 2010 в 05:19
поделиться

2 ответа

Почему бы просто не использовать:

UPDATE the_table
   SET boolean_field = NOT boolean_field
WHERE ...

Облегчает чтение вашего намерения

52
ответ дан 30 November 2019 в 05:50
поделиться

Вы также можете использовать поле = 1 - поле или поле =! поле

17
ответ дан 30 November 2019 в 05:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: