外部クエリに適用した日付変数がありますが、エラー メッセージが表示されます: v_Date is not valid in the context where it is used - 内部クエリで使用しようとすると。
内部クエリの 2016 年 3 月 31 日の 2 つの日付を時間変数 v_Date に置き換えるのを手伝ってくれませんか? WITH 行を移動する必要がありますか、それとも二重結合を行う必要がありますか?
WITH ttt as (select '3/31/2016' v_Date FROM SYSIBM.SYSDUMMY1)
SELECT
fpr.ID
fpr.ID_PRICG_MTHDY,
fpr.MARKET_DATE,
fpr.PRICE_AMOUNT AS FIRST_PRICE,
pr.PRICE_AMOUNT AS SECOND_PRICE,
pr2.PRICE_AMOUNT AS THIRD_PRICE,
thr.PRICE_DIFF AS TEST_1,
thr.PRICE_DIFF2 AS TEST_2
FROM PRICE_TABLE_1 fpr
LEFT JOIN PRICE_TABLE0 pr
ON fpr.ID = pr.ID AND pr.MARKET_DATE = '3/31/2016' AND pr.ROLE_TYPE = 'D'
LEFT JOIN PRICE_TABLE0 pr2
ON fpr.ID = pr2.ID and pr2.MARKET_DATE = '3/31/2016' AND pr2.ROLE_TYPE = 'P'
LEFT JOIN THRESHOLD_TEST_TABLE thr
ON fpr.ID_PRICG_MTHDY = thr.ID_PRICG_MTHDY
JOIN ttt ON fpr.MARKET_DATE = v_Date
WHERE fpr.DT_EXPTN = '1/1/9999'
AND fpr.MARKET_DATE = fpr.SELL_DATE
AND fpr.TYPE = 'F'
AND fpr.ID_PRICG_MTHDY IN (1, 3, 4, 7)