1
我有一個要求在更新表中一列,如果列具有被不喜歡輸入空值或值更新列。如何根據條件
是否有可能做一個單一的SQL查詢?我的數據庫是DB2
我曾嘗試下面的一個,但即使變化是不存在的,它正在更新。我不想那樣。
UPDATE ABC
SET AG = CASE
WHEN AG IS NULL
OR AG <> 1000010
THEN 1000010
ELSE AG
END,
P = CASE
WHEN P IS NULL
OR P <> 1235
THEN 1235
ELSE P
END
WHERE c = 607
我很抱歉,但究竟這不同於只是'UPDATE ABC SET AG = 1000010,P = 1235'? – raina77ow
有沒有你不想要更新已經有值行的原因是什麼?你是否試圖避免執行數據庫觸發器?無論如何,我認爲兩條更新聲明可能是最好的選擇。 – mwolfetech
或者,你是否正在更新另一列(如update_timestamp)?無論哪種方式,我建議編輯你的SQL來更好地模擬你的實際問題。 – mwolfetech