分類:[.NET 全般]
2018/10/30(Tue) 12:41:16 編集(投稿者)
日付のデータ:CAL
DATE PH LABEL
:
20181001, 1 J1 (平日)
20181002, 1 J2
20181003, 1 J3
20181004, 1 J4
20181005, 1 J5
20181006, 1 J6
20181007, 2 null (休日)
20181008, 2 null
20181009, 1 J7
20181010, 1 J8
:
予定のデータ:PLN
NAME DAY DATE
:
A, 5, 20181009
B, 3, 20181005
C, 3, 20181004
:
があります。
PLNデータのDATEを基準にDAY日分前日の日付とラベルをとりたいので
以下のようにしました。
SELECT PLN.NAME, CAL.DATE, CAL.LABEL
FROM PLN
LEFT OUTER JOIN (
SELECT DATE, LABEL, ROW_NUMBER() OVER(ORDER BY DATE DESC) AS RNUM
FROM CAL
WHERE PH = 1
AND DATE <= PLN.DATE ←バインドできない
) AS CAL
ON CAL.RNUM = PLN.DAY
バインドさせる方法はないのでしょうか?
また、このような場合はどうするのがいいのでしょうか?