我有表所示:SQL更新命令
項目
- ID(INT)
- 名稱(VARCHAR)
- 日期(日期時間)
- 值( int)
I'd lik E要編寫SQL命令,它只會更新這些值,這是不爲空
僞的,我想怎麼辦代碼:
UPDATE Items
SET
IF @NewName IS NOT NULL
{
Items.Name = @NewName
}
IF @NewDate IS NOT NULL
{
Items.Date = @NewDate
}
IF @newValue IS NOT NULL
{
Items.Valie = @NewValue
}
WHERE Items.ID = @ID
是否有可能寫這樣的查詢?
我可能會爲每一列做一個單獨的查詢,因爲你只有3. UPDATE Items SET Name = @ NewName WHERE Name = null'和n做下一個'UPDATE Items SET Date = @ NewDate WHERE Date = null'。這不是一個可重複使用或可擴展的解決方案,但它可以用於一次性場景。 – Adam
@Adam有3倍鎖定的開銷 – Paparazzi