| 分類:[.NET 全般]
以下のような日付と休みのデータ(DATETABLE)があり
Date Yasumi : 20191220 1 -4 20191221 2 20191222 2 20191223 1 -3 20191224 1 -2 20191225 1 -1 20191226 1 0 20191227 1 1 20191228 2 20191229 2 :
今日(12/27)を境に平日で 以下のように何日後、何日前を得る場合
Date Offdate : 20191220 -4 20191223 -3 20191224 -2 20191225 -1 20191226 0 20191227 1 :
SELECT Date, ROW_NUMBER() OVER(ORDER BY Date) AS Offdate FROM DATETABLE WHERE Yasumi = 1 AND Date >= 20191227 UNION SELECT Date, 1 - ROW_NUMBER() OVER(ORDER BY Date DESC) AS Offdate FROM DATETABLE WHERE Yasumi = 1 AND Date < 20191227
で、求めたのですがUnionを使用しないで Over句のRowsを使用してできるような気がしたのですが できないのでしょうか?
|