我想使用 SQL 将给定的年份拆分为给定数量的日期范围。拆分时需要考虑以下几点:
给定的年份总是从 01-01 开始,到 12-31 结束,它应该根据月份分成给定数量的片段。例如:
year SplitCount output 2019 2 2019-01-01 2019-07-01 2019 3 2019-01-01 2019-05-01 2019-09-01
- 如果用户要求将给定的年份分成 12 部分,则应将全年分成 12 个月。
- 如果用户要求将给定年份拆分超过 12 件,则应按周拆分
请建议。
尝试这个:。它使用 DateFromParts(year, month, 1) 为任何值 1..12 找到正确的月份,或者它使用 DateAdd(week, date) 来计算任何值 13..52。这样,我们让数据库引擎为我们担心诸如闰年之类的烦人的事情,而不是我们自己做那种数学。
这个
给出:
这个
给出:
这个
给出: