2011-12-31 288 views
-1

为什么这个MySQL查询失败?mysql查询失败?

UPDATE accounts 
SET motivation = IF(motivation+100 <= maxMotivation AND subscriberDays = 0, 
        motivation+100) 

我无法得到它的工作,我试图做一个更新与if语句

回答

0

IF function有三个参数。条件,value_if_true,value_if_false。你错过了后者。

+0

啊所以它就像一个三元运算符! – cgweb87 2011-12-31 05:03:55

+0

@ cgweb87 - 是的,但它不是操作员。 – 2011-12-31 05:04:24

1

您可以在不重写IF它在所有:

UPDATE accounts 
SET motivation = motivation+100 
WHERE motivation+100 <= maxMotivation AND subscriberDays = 0 

与此查询更有意义