最初の日付、日番号、頻度、および最終日付を指定して、次の一致する日番号と月を計算する関数が SQL にあるかどうかを知りたいですか?
例えば
@initialdate=20130101
@finaldate=20133112
@daynumber=14 --that means every 14
@frecuency=2
次に、クエリは次の日付を次のように生成します。
20130114
20130314
20130514
20130714
20130914
20131114
解決策が CTE である場合、2 月 28 ~ 29 日で日付番号が 31 の場合に有効です。
これは私が取り組んでいるクエリであり、頻度のタイプ、頻度、および頻度の種類に依存するオカレンスを指定して日付を生成しようとしています。
Type of Frec Frecuency Ocurrence
DI (Dairy) 1 (Every 1 day) na
DI (Dairy) 2 (Every 2 day) na
..
DI (Dairy) 6 (Every 6 day) na
SE (Weekly) 1 (Every 1 week) 1 (for Monday)
SE (Weekly) 2 (Every 2 weeks) 3 (for Wednesday)
SE (Weekly) 3 (Every 3 weeks) 5 (for Friday)
SE (Weekly) 4 (Every 4 weeks) 2 (for Tuesday)
MD (Monthly by day) 1 (Every 1 month) 1 (for first day of the month)
MD (Monthly by day) 1 (Every 1 month) 2 (for last day of the month)
...
MD (Monthly by day) 11 (Every 11 months) 2 (for last day of the month)
MF (Monthly by date) 1 (Every 1 month) 14 (for every 14 of the month)
...
MF (Monthly by date) 2 (Every 2 months) 30 (for every 30 of the month)
MF (Monthly by date) 3 (Every 3 months) 31 (for every 31 of the month)