MySQL:在UPDATE期间添加数字

时间:2012-03-22 16:14:24

标签: php mysql sql pdo

我正在尝试为用户更新列,以便他们只能将值添加到现有值。例如,如果表格如下所示:

UserID 3  
Total  12

用户添加4,因此更改为:

UserID 3  
Total  16

我显然可以通过执行查询,获取列值,将其添加到新值,然后更新该列来实现此目的......但我想知道是否有办法在不使用SELECT语句的情况下执行此操作第一。也许使用SUM()的东西?

所以查询可能会:

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

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

谢谢!

2 个答案:

答案 0 :(得分:3)

它很简单:

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

答案 1 :(得分:2)

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

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