我正在尝试为用户更新列,以便他们只能将值添加到现有值。例如,如果表格如下所示:
UserID 3
Total 12
用户添加4
,因此更改为:
UserID 3
Total 16
我显然可以通过执行查询,获取列值,将其添加到新值,然后更新该列来实现此目的......但我想知道是否有办法在不使用SELECT语句的情况下执行此操作第一。也许使用SUM()的东西?
所以查询可能会:
UPDATE Users SET Total=SUM(Total + :total) WHERE UserID = :userID;
如果是,那么正确的语法是什么?
谢谢!
答案 0 :(得分:3)
它很简单:
UPDATE Users SET Total = Total + :total WHERE UserID = :userID;
答案 1 :(得分:2)
您不需要SUM()
,因为您只是添加值,SUM()
会将列的值添加到一起。
UPDATE Users
SET Total= Total + :total
WHERE UserID = :userID;