以下のテーブルでSQLを実行しましたが、エラーとなってしまいます。
when '2' then '2' OR '3'
の箇所が原因のようです。
then句には条件を2つ以上書くことはできないのでしょうか?
また、条件を2つ以上書きたい場合は他にどのような方法がありますか?
テーブルデータ
ID NAME --------------- 1 name_1 1 name_2 1 name_3 1 name_4 1 name_5 1 name_6 1 name_7 1 name_8 1 name_9
declare tmp char(1); hoge char(1); begin tmp := '&1'; select id into hoge from hoge where id = case tmp when '1' then '1' when '2' then '2' OR '3' end and name = 'name_1'; dbms_output.put_line(hoge); end; /
■補足
tmpが1のときid = '1'
tmpが2のときid = '2' OR id = '3'(または id IN ('2', '3')) としたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/10 14:04