2012-03-22 21 views
0

我想为用户更新列,以便他们只能将值添加到现有值。因此,例如,如果表是这样的:MySQL:在更新期间添加数字

UserID 3 
Total 12 

用户添加4,所以它改为:

UserID 3 
Total 16 

我能明显做一个查询,获取列值做到这一点,添加它的新值,然后更新该列......但我想知道是否有办法做到这一点,而不先使用SELECT语句。也许使用SUM()的东西?

所以查询可能会去:

UPDATE Users SET Total=SUM(Total + :total) WHERE UserID = :userID; 

如果是这样,什么是正确的语法?

谢谢!

回答

2

您不需要SUM(),因为您只是添加值,SUM()将列的值添加在一起。

UPDATE Users 
SET Total= Total + :total 
WHERE UserID = :userID; 
+0

十分感谢!非常感激。 – 2012-03-22 16:19:26

3

很简单:

UPDATE Users SET Total = Total + :total WHERE UserID = :userID; 
+1

非常感谢!非常感激。 – 2012-03-22 16:19:47