1つのオプションは、WITH
を使用することです。 パラメータをダミーテーブルに割り当てる句。
WITH tmp_parms AS (
SELECT ? as fr_dt, ? as to_dt, ? as p_comp_code,
? as fr_cat, ? as to_cat, ? as p_sub_code
FROM dual
)
SELECT C.COMP_CODE,C.MATCODE, ... etc
FROM tmp_parms tp,
(
SELECT A.COMP_CODE,A.MATCODE, ... etc
または、さらに別のインラインビューが必要な場合:
SELECT C.COMP_CODE,C.MATCODE, ... etc
FROM (
SELECT ? as fr_dt, ? as to_dt, ? as p_comp_code,
? as fr_cat, ? as to_cat, ? as p_sub_code
FROM dual
) tp,
(
SELECT A.COMP_CODE,A.MATCODE, ... etc
次に、既存のすべてのバインド変数を、一時パラメーターテーブルの同等の列への参照に置き換えます。つまり、次のように変更します。
b.grn_date<=:TO_DT)
これに:
b.grn_date<=tp.to_dt)