带有if()函数的update语句的说明

时间:2014-10-27 15:05:25

标签: mysql if-statement sql-update

任何人都可以帮我解决这个问题吗?我不明白这IF正在做什么。

UPDATE yob_users 
     SET money = money + IF(account='premium',$premiumclick,$click), 
         visits = CONVERT(visits,UNSIGNED) + 1 
WHERE username='$user' 

1 个答案:

答案 0 :(得分:0)

语法是

IF(<boolean expression>, <then>, <else>)

您的查询会使用给定的用户名更新每一行,并且如果同一行$premiumclick中的account等于"premium",则会向每行添加$click的数量。否则,它会增加{{1}}的数量。它还会增加每行的访问次数。

很可能您有一次签名integer column次访问。这允许介于-2147483648之间的值2147483647.无符号整数允许介于0和4294967295之间的值。但是如果转换它,可以递增它,是的,但是如果值对于签名的访问列来说太大,则赋值将失败。 / p>

还有其他问题吗?