我有一個帶有表myTable和列id,posX,posY的SQLite數據庫。行數不斷變化(可能增加或減少)。如果我知道每行的id值和行數,是否可以執行單個SQL查詢以根據id更新所有posX,posY字段的不同值?在單個SQL查詢中更新具有不同值的多行
例如:
---------------------
myTable:
id posX posY
1 35 565
3 89 224
6 11 456
14 87 475
---------------------
爲SQL查詢的僞代碼:
" UPDATE myTable SET posX[id] = @arrayX[id], posY[id] = @arrayY[id] "
@arrayX,其存儲用於POSX和POSY字段的新值被arrayY陣列。
,例如如果arrayX和arrayY包含以下值:
arrayX = { 20, 30, 40, 50 }
arrayY = { 100, 200, 300, 400 }
查詢後,數據庫應該是這樣的:
---------------------
myTable:
id posX posY
1 20 100
3 30 200
6 40 300
14 50 400
---------------------
這可能嗎?我現在正在每個查詢更新一行。但隨着行數的增加,需要數百個查詢。順便說一下,我在AIR中完成了所有這些工作。
或許這能夠幫助http://dba.stackexchange.com/questions/17590/find-last-max-value-according-to-timestamp-using-update-method – adopilot 2012-07-19 15:35:40