if elsif
をcase
の内部でOracle 11Gを使用するにはどうすればよいですか?Oracle IF inside CASE
別の列に基づいてtype_pre
値を3または4で終了したいと考えています:gr.gt_id
。
実行しようとしましたが、エラーメッセージにキーワードがありません。
このタスクを実行するより良い方法はありますか?
CASE
WHEN certv.id IS NOT NULL THEN NULL
WHEN cert.id IS NOT NULL THEN
IF gr.gt_id = 0 THEN type_pre = 3
ELSIF gr.gt_id = 1 THEN type_pre = 4
END IF
WHEN not.id IS NOT NULL THEN NULL
END as type_pre,
プレーンSQLまたはPL/SQLプロシージャ/関数/ etcでこれを実行していますか? – mathguy
これはビューですが、プレーンなSQLにも役に立ちます –