昨日の連続する日付のいずれかがある場合、私の休日のテーブルから連続した日付をフィルタリングしたいと思います。以下は行番号で連続した日付を取得する私のコードです。SQL Serverの連続する日付のフィルタリング
SELECT
RW = ROW_NUMBER() OVER(PARTITION BY GRP ORDER BY HolidayDate),
HolidayDate
FROM
(SELECT
HolidayDate,
DATEDIFF(Day, '1900-01-01', HolidayDate) - ROW_NUMBER() OVER (ORDER BY HolidayDate) AS GRP,
HolidayType
FROM
Holiday) A
ORDER BY
HolidayDate
たとえば、昨日の日付は03/14/2017です。この日付を含む連続した休暇がある場合、私はホリデーテーブルからデータを取得する必要があります。
出力は他の一致がない場合さて、あなたはほとんどあり
03/12/2017
03/13/2017
03/14/2017
明確にしてください。 「この日付に連動する連休がある場合はどういう意味ですか?」3/14と3/15がともに休日であった場合はどうですか?このテーブルには休日のみが含まれていますか?実際の世界の例が役立つかもしれません。クリスマスイブとクリスマスの両方が休日である状況について話していますか?出力はクリスマスイブだけでなければならないとあなたは言っていますか?または両方?どちらか?それらの2つを除く毎日? –