小编kkr*_*kkr的帖子

使用"开始日期"和"结束日期"将日期拆分为间隔

我有一个场景,我需要将给定的日期范围分成每月间隔.

例如,输入如下:

StartDate   EndDate
2018-01-21  2018-01-29
2018-01-30  2018-02-23
2018-02-24  2018-03-31
2018-04-01  2018-08-16
2018-08-17  2018-12-31
Run Code Online (Sandbox Code Playgroud)

预期的输出应如下所示:

StartDate   EndDate
2018-01-21  2018-01-29
2018-01-30  2018-01-31
2018-02-01  2018-02-23
2018-02-24  2018-02-28
2018-03-01  2018-03-31
2018-04-01  2018-04-30
2018-05-01  2018-05-31
2018-06-01  2018-06-30
2018-07-01  2018-07-31
2018-08-01  2018-08-16
2018-08-17  2018-08-31
2018-09-01  2018-09-30
2018-10-01  2018-10-31
2018-11-01  2018-11-30
2018-12-01  2018-12-31
Run Code Online (Sandbox Code Playgroud)

以下是示例数据.

CREATE TABLE #Dates
(
    StartDate DATE,
    EndDate DATE
);


INSERT INTO #Dates
(
    StartDate,
    EndDate
)
VALUES
('2018-01-21', '2018-01-29'),
('2018-01-30', '2018-02-23'),
('2018-02-24', '2018-03-31'),
('2018-04-01', '2018-08-16'),
('2018-08-17', '2018-12-31');
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server datetime sql-server-2008-r2

9
推荐指数
1
解决办法
481
查看次数

标签 统计

datetime ×1

sql ×1

sql-server ×1

sql-server-2008-r2 ×1

t-sql ×1