Java, Groovy on Grails, PHP, Kohana

Блог о программировании на Java, Groovy on Grails, PHP, kohana

Currently Viewing Posts Tagged оптимизация

Инвертирование значения поля при помощи связки SQL UPDATE IF

Часто в таблицах мы храним данные в виде bool значений, например, флаг наличия товаров магазине.
Таблица products:

id name price instock
1 Ботинки 100 1
2 Сапоги 200 1
3 Тапочки 50 0

где instock – флаг наличия товара на складе, 0 – нет товара, 1 – есть.
Из админ панели магазина мы меняем состояние наличия того или иного товара на складе, например, нажатием кнопки “В наличии”.
В нашем скрипте мы выполняем следующий запрос к БД:

UPDATE `products` SET `instock` = IF (`instock` = 0, 1, 0)

таким образом при значении в поле равном “0” мы устанавливаем значение поля равное “1” и наоборот, при равном “1” устанавливаем – “0”.

  • Recent Posts