Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Boolean в MySQL

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: как получить обратное значение поля ?
Delovoy
Отправлено: 08 Февраля, 2011 - 17:42:34
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




У меня есть таблица "g_user", в которой имеется поле "st" (статус) типа BOOL (т.е. 0 или 1)
мне нужно в запросе меня статус поля на противоположный
т.е. там где st=1 установить st=0
и соответственно наоборот: т.е. там где st=0 установить st=1

можно было бы получить существующее значение поля и сделать логическое отрицание

кто-то может подсказать как это реализовать в запросе ?
 
 Top
Ch_chov
Отправлено: 08 Февраля, 2011 - 18:11:49
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




CODE (SQL):
скопировать код в буфер обмена
  1. UPDATE `g_user`  SET `st` = !`st`
 
 Top
Delovoy
Отправлено: 09 Февраля, 2011 - 10:47:08
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




все гениальное просто .. )))
Спасибо, Ch_chov !
 
 Top
EGORR
Отправлено: 14 Февраля, 2011 - 20:27:59
Post Id



Новичок


Покинул форум
Сообщений всего: 43
Дата рег-ции: Нояб. 2009  
Откуда: Ярославль


Помог: 0 раз(а)




CODE (SQL):
скопировать код в буфер обмена
  1.     UPDATE `g_user`  SET `st` = !`st`

Не работает...
Я делаю так
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. UPDATE applicant
  3. SET    hide                   = IF( applicant.hide = 'hide', 'show', 'hide' )
  4. WHERE  applicant.applicant_id = ?
 
 Top
Мелкий Супермодератор
Отправлено: 14 Февраля, 2011 - 21:45:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




EGORR пишет:
Не работает...

А с чего бы ему работать, если у вас не булевое, а строковое значение?


-----
PostgreSQL DBA
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB