SQL秘技(2): 大批量Update / UPSERT

I.T. 9 遊戲日誌
4 min readDec 7, 2021

等等個篇文有bug,如果scenario咁簡单單直接update + join就得,零分😂

夜啲重作。

情景

假設有噉嘅一個Table t:

 ID | Value
----|-------
A | 10
B | 20
C | 30

而分別想為A嘅Value +3,B嘅+5,C嘅+7。

最直觀嘅解法係:

UPDATE t SET Value=Value+3 WHERE ID='A';
UPDATE t SET Value=Value+5 WHERE ID='B';
UPDATE t SET Value=Value+7 WHERE ID='C';

實際情景可能係: 倉庫做完盤點,要根據盤點結果對一堆SKU嘅庫存量做偏移。

問題

--

--

I.T. 9 遊戲日誌

「IT9,你的資訊真的很有用」 你好 我就係IT9 Trust me I am IT9 // fb@it9gamelog, youtube@it9gamelog