1

ユーザーが日付で指定した結果が必要です。ユーザーが日付 2013-01-14 と合計日数 = 2 を指定した場合、除外する必要があるとします。

2013-01-10
2013-01-11
2013-01-14
2013-01-15
2013-01-16

12 と 13 の日付を返すべきではありません。つまり、2013-01-13, 2013-01-12

同様に、合計日数 = 3 の場合

    2013-01-09
    2013-01-10
    2013-01-11
    2013-01-14
    2013-01-15
    2013-01-16
    2013-01-17

どうすればこれを入手できますか。

4

1 に答える 1

1

関数を使用してこれを試してくださいDateAdd()

declare @Number int = 2, @Date Date = '20130114' --yyyymmdd format

select col1, col2
from yourTable
where dateCol >= dateAdd(day, -1*@Number, @Date) and dateCol< @Date

更新:あなたの説明はあまり明確ではありません。必要なのは、指定された日付から +/- の範囲内のレコードを選択することだと思います。

select col1, col2
from yourTable
where dateCol >= dateAdd(day, -1*@Number, @Date) and dateCol <= dateAdd(day, @Number, @Date)
于 2013-10-22T19:53:22.687 に答える