2015-06-03 57 views
0

在php,c或java中,如果我需要添加到計數我只是做一個$value += 1;在SQL Server中是否有等價的賦值操作符?

我正在尋找一個類似的操作在sql server查詢。

背景

我有跟蹤與簡化的列(ID1,ID2,TheCount)主鍵(ID1,ID2)的一些統計數據的表格

我知道ID1,ID2,和一個 「修飾語」 值可能是1,0或-1。我想要一個查詢,允許我用修飾符更新count列。

從理論上講這個查詢看起來是這樣的:

Update TheCounts SET TheCount += :modifier WHERE id1 = :id1 AND id2 = :id2

:...值的變量。

任何想法?

+0

'更新thecounts設置thecount = thecount +:修改其中...' –

回答

1
Update TheCounts 
    SET TheCount = TheCount + @modifier 
WHERE id1 = @id1 AND id2 = @id2 

但是,如果修飾符可以是0,你根本不想改變它。那麼你應該檢查,如果之前,f.e.與If..Else如果它在存儲過程或執行此操作。

或者你能做到這一點的WHERE

WHERE @modifier <> 0 AND id1 = @id1 AND id2 = @id2 
+0

哇,這是比我預期它是輕鬆了許多。我覺得我應該能夠自己解決這個問題。感謝你的回答。 – danielson317

+0

您也可以在SQL 2012及更高版本中使用+ =。所以像「'設置計數+ = @修飾符」 –

相關問題