最近、2つの異なる基準に基づいて、ファイル内の同じフィールドで更新を実行できるかどうかという質問がありました。1日の処理の終わりに2つの異なるSQLを実行する手順を導入したため、最初の問題は軽減されました。しかし、このテーマに関する私自身の知識のために、以下のような1つのSQLステートメントを実行できるかどうか知りたいですか?
UPDATE MYFILE
SET FIELD1 = 'ABC' where FIELD2 = '123' and FIELD3 = '456',
SET FIELD1 = 'XYZ' where FIELD2 = '789' and FIELD3 = '123'
そのようなことは1つのステートメント内で可能ですか、それとも私たちがやったように2つのステートメントに分割する必要がありますか?
前もって感謝します!
ステートメントcase
内で式を使用できますupdate
。
update myfile
set field1 = case
when field2 = '123' and field3 = '456' then 'abc'
when field2 = '789' and field3 = '123' then 'xyz'
end
where
(field2 = '123' and field3 = '456')
or (field2 = '789' and field3 = '123')
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加