質問: カラムAとカラムAA または、カラムBとカラムBB または、カラムCとカラムCC これらを比較して どちらか一致しないものが見つかったら1とするという case when文を書きたいです。 ただ、それぞれのカラムNullを含む可能性があるので、 単純に比較するとエラーになりますので、 以下のようにしました。(カラムCとカラムCCは数値フィールドです) , CASE WHEN NVL(カラムA, '123') != NVL(カラムAA, '123') OR NVL(カラムB, '123') != NVL(カラムBB, '123') OR NVL(カラムC, '123') != NVL(カラムCC, '123') TEHN 1 ELSE '' END FLG この場合、123が絡むに入っていないこと前提で、 事実123が運用で入ることは考えられませんが、 スマートでないので別案を考えていますが、 良案を教えてほしいです。
回答: ``` WHEN NVL(カラムA, '') != NVL(カラムAA, '') OR NVL(カラムB, '') != NVL(カラムBB, '') OR NVL(カラムC, '') != NVL(カラムCC, '') ``` 多くの人はこういう感じで書くかも。 空文字で問題ないはずですから。