Loading...
PHP/MySQL | А что так разве можно было? :)
использовал такой вот запрос

update users set bonus_status = case when datediff(now(), datetime_last) > 1 then 1 else bonus_status + 1 end, bonus_last = floor(10 + rand() * 91), bonus_log = 1, gold = case when bonus_status < 5 then gold + 1 else gold + bonus_last end where datediff(now(), datetime_last) != 0 && training = 13 && id = ? limit 1


поставил последнюю версию шторма и он мне пофиксил запрос до такого

update users set bonus_status = if(datediff(now(), datetime_last) > 1, 1, bonus_status + 1), bonus_last = floor(10 + rand() * 91), bonus_log = 1, gold = if(bonus_status < 5, gold + 1, gold + bonus_last) where datediff(now(), datetime_last) != 0 && training = 13 && id = ? limit 1

нормально?

это типа альтернативный синтаксис мускула?

вот это

case when datediff(now(), datetime_last) > 1 then 1 else bonus_status + 1 end

заменилось на это

if(datediff(now(), datetime_last) > 1, 1, bonus_status + 1)
Прям Америку заново открыл , я всегда через условный оператор и юзаю
SickBoy (23.08.2019 в 14:47)
Прям Америку заново открыл , я всегда через условный оператор и юзаю


покажи
Вероломство, просто так ничего не показываю.
1 консультация стоит денег
SickBoy (23.08.2019 в 21:57)
Вероломство, просто так ничего не показываю.
1 консультация стоит денег

фуфло
Онлайн: 3
Время:
Gen. 0.0823
(c) Bym.Guru 2010-2025