MySQL запрос

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

softmobidev
softmobidev
Репутация: 8
Сообщения: 111
Зарегистрирован: 16.02.2018
С нами: 6 лет 1 месяц

Сообщение #1 softmobidev » 28.03.2019, 18:06

Подскажите что не так в запросе

update ok_variants set stock='0' where price<1

что нужно сделать: во всех товарах у которых цена 0 проставить количество 0 вместо NULL

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #2 korshunov » 29.03.2019, 06:27

Запрос вполне нормальный и работает.
"что не так" - это Вы должны объяснить. Обычно запрос оценивают по его результатам.
И вообще чтобы вопрос был осмысленным, надо сначала обосновать, что в нем есть что-то "что не так". А пока он некорректный...

softmobidev
softmobidev
Репутация: 8
Сообщения: 111
Зарегистрирован: 16.02.2018
С нами: 6 лет 1 месяц

Сообщение #3 softmobidev » 29.03.2019, 16:13

при выполнении пишет "затронуто 0 столбцов и полей" то есть запрос работает но что-то нет, ибо товары с ценой 0 есть в количестве 500 штук, которым количество так же надо назначить 0 вместо NULL

n4sm
n4sm
Репутация: 5
Сообщения: 15
Зарегистрирован: 27.02.2019
С нами: 5 лет 1 месяц

Сообщение #4 n4sm » 29.03.2019, 17:15

Попробуйте
update ok_variants set stock= '0' WHERE price BETWEEN 0 AND 1
или просто если price = 0

korshunov
korshunov
Репутация: 146
Сообщения: 1854
Зарегистрирован: 03.12.2015
С нами: 8 лет 3 месяца
Skype

Сообщение #5 korshunov » 29.03.2019, 17:20

У меня работает нормально.

На стандартной базе сначала выполняю
update ok_variants set stock=null, price=0 limit 5;

Потом Ваш запрос
update ok_variants set stock='0' where price<1;
дает 5 rows affected, как и должно быть.

Что-то Вы путаете сами, скорее всего...

n4sm
n4sm
Репутация: 5
Сообщения: 15
Зарегистрирован: 27.02.2019
С нами: 5 лет 1 месяц

Сообщение #6 n4sm » 29.03.2019, 18:30

по разному
в adminer'e ок
phpmyadmin сопротивляется - возвращает "0 строк затронуто"

softmobidev
softmobidev
Репутация: 8
Сообщения: 111
Зарегистрирован: 16.02.2018
С нами: 6 лет 1 месяц

Сообщение #7 softmobidev » 29.03.2019, 23:51

да действительно вот так update ok_variants set stock='0' where price<1 в phpmyadmin писало затронуто 0 строк а в adminer нормально сработало как надо


Название раздела: Вопросы по работе с OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Вопросы по работе с OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 22 гостя