私はストアドプロシージャを実行しており、以下のような約13個の更新ステートメントが出現したときに最適化しようとしていました。誰かがこれよりも良い解決策を持っているのだろうかと思っていました。私はケース・ステートメントを使用するか、合体することができますが、これは意味的には同じですが、すべての列が常に更新されることに留意してください。おそらく問題はありませんが、トランザクション量が多いので、この方法で並行性の問題が発生する可能性があります。彼らがnullの場合は0に列を設定する機能を維持しながら複数の更新文を組み合わせることはできますか?
UPDATE COGS
SET Revenue = 0
WHERE Revenue IS NULL
AND monthDate = @targetCOGSdate;
UPDATE COGS
SET Costs = 0
WHERE Costs IS NULL
AND monthDate = @targetCOGSdate;
UPDATE COGS
SET Disposal = 0
WHERE Disposal IS NULL
AND monthDate = @targetCOGSdate;
UPDATE COGS
SET Trans = 0
WHERE Trans IS NULL
AND monthDate = @targetCOGSdate;