UPDATE TableA
SET Value = a.Value * b.AnotherValue
FROM TableA AS a
INNER JOIN TableB AS b
WHERE (Condition is true);
這是問題所在。 TableA的值字段不允許空值。如果a.Value * b.AnotherValue的計算結果爲null,則會引發錯誤。現在是問題。當計算結果爲空並且刪除記錄而不是更新記錄時,有什麼辦法可以告訴UPDATE忽略SET階段嗎?此UPDATE旨在一次更新數百條記錄,但如果遇到單個空值將會失敗。另外,請注意使用ISNULL()函數並將值設置爲零是不可接受的。如果遇到null,我希望該記錄被刪除。非常感謝提供任何幫助。Nulls和UPDATE語句的問題
您的INNER JOIN語句沒有「ON」子句。爲了清晰起見,我認爲它被忽略:) – 2010-05-29 04:10:25