私は次のような句を持っていますDECODE
:WHERE
Where id = decode('&flag','Yes',(Select id from tab where id > 10),0)
このコードは、サブクエリが 1 つの投稿を返す場合に機能します。複数を返すと、ORA-01427、「単一行のサブクエリが複数の行を返します」のようなエラーが発生します
「=」を「in」に変更しようとしましたが、それでも同じエラーが発生します。
何か案は?
拡張例:
WHERE Dop_id = (DECODE ('&prep_flag', 'Yes',
(SELECT Dop_id FROM
( SELECT DOP_id, name FROM TABLE)
WHERE name IS NOT NULL)
, Dop_id))
言及したように、これは、select statmen が複数ではなく行で返される場合に機能します。