2012-04-23 21 views
2

這是爲SqlCe, 我想更新一個表並設置won + = 1爲贏家,失敗= 1輸。 我知道我可以用兩個不同的更新聲明來做到這一點,但我想知道是否可以在更新輸家「失去」價值的同時更新贏家「贏」價值。sql - 可能在一個查詢中用不同的critera更新兩行?

基本上只是這樣看,

UPDATE player SET won = won +1 WHERE id = 0 
UPDATE player SET won = lost +1 WHERE id = 1 

回答

1

這是不漂亮,但它的工作原理

UPDATE player SET won = won + CASE WHEN id = 0 THEN -1 ELSE 1 END WHERE id in (0,1) 

我個人堅持使用兩個更新語句

+0

是的,我認爲這會更容易做到兩個,我現在堅持。感謝您的評論。 – Meowbits 2012-04-23 04:00:30

+0

'SET won = CASE當id = 0 THEN won + 1 ELSE lost + 1 END' – 2012-04-23 05:32:19

相關問題