我觉得这是一个非常基本的SQL问题,但我在寻找答案时遇到了麻烦。
基本上我想在SQL语句中编写的逻辑就是这个。
在对行进行更新而不是仅消隐数据时,将其添加到一起。
所以,如果我有一行"9/19/13" | 0 | 1 | 0
,现在我想用此条目"9/19/13" | 0 | 1 | 0
更新该行,我会"9/19/13" | 0 | 2 | 0
。
我当前的更新命令是这样的。
UPDATE entries(Date, John, Mark, Casey) SET (@Date, @John, @Mark, @Casey) WHERE(Date = @Date);
我可以轻松地在我的实际代码中执行此操作,我将检索条目增量,然后只进行常规更新,但我觉得应该可以使用直接SQL来执行此操作,并且会更清晰。
答案 0 :(得分:3)
这是你的意思吗?
-- @John, @Mark, @Casey are set in advance
UPDATE entries(Date, John, Mark, Casey)
SET (@Date, John + @John, Mark + @Mark, Casey + @Casey)
WHERE (Date = @Date);
答案 1 :(得分:0)
调用update只是将db中的值设置为您传入的值,而不是将现有值(在数字的情况下)添加到您要更新的值。
如果你已经拥有它,只需在更新前增加值就会简单得多。