我在很多場合使用過這個查詢,從來沒有問題。我只是想知道當用1個查詢更新10,000行時這是最好的選擇嗎?使用一個查詢優化更新多行
我正在更新並對郵政編碼數據庫進行更改,其中一些可能會變得非常大。
這是我在用更新用戶將始終是相同的時候(把它想象成爲萬加郵政編碼)
UPDATE postalcodes
SET user = CASE postal
WHEN 'M4C 1A1' THEN '1'
WHEN 'M4C 1A2' THEN '1'
WHEN 'M4C 1A3' THEN '1'
END
WHERE postal IN ('M4C 1A1','M4C 1A2','M4C 1A3')
在所有情況下。
我正確地做這件事還是有更快,最優化的解決方案?謝謝。
您可能需要說明您正在嘗試做什麼。在CASE子句可以用一個簡單的'= 1' – PaulG 2010-10-14 22:06:33
代替的那一刻,我正在尋求賦予POSTALCODES表中知道爲USER的郵政編碼塊的所有權。 示例 - 如果我要給id爲1的用戶提供郵政編碼塊,則需要使用一個查詢來更新表POSTALCODES,其中所有郵政編碼已選爲USER = 1。 – Tim 2010-10-14 22:47:53
希望這可以使感! – Tim 2010-10-14 22:48:10