小编Mih*_*giu的帖子

生成表中存储的两个日期之间的所有日期

SQL Server 2014

我需要从表#data生成开始日期和结束日期之间的所有日期。表#data包含几行,分别包含开始日期和结束日期。

CREATE TABLE #data  (
    StartDate DATE NOT NULL,
    EndDate DATE NOT NULL,
    Opt INT NOT NULL)

insert into #data values('2016-04-10', '2016-04-12', 2)
insert into #data values('2016-04-10', '2016-04-15', 3)
insert into #data values('2016-05-10', '2016-05-12', 4)
Run Code Online (Sandbox Code Playgroud)

表#data可能包含数百行。

我的最终选择将包括:

2016-04-10 2
2016-04-11 2
2016-04-12 2
2016-04-10 3
2016-04-11 3
2016-04-12 3
2016-04-13 3
2016-04-14 3
2016-04-15 3
2016-05-10 4
2016-05-11 4
2016-05-12 4
Run Code Online (Sandbox Code Playgroud)

我目前有这个,但是我必须扩展对#data中所有行的选择:

DECLARE @StartDateTime DATETIME
DECLARE @EndDateTime DATETIME

SET @StartDateTime = '2015-01-01'
SET @EndDateTime = '2015-01-12';

--delete …
Run Code Online (Sandbox Code Playgroud)

sql sql-server date

3
推荐指数
1
解决办法
4212
查看次数

标签 统计

date ×1

sql ×1

sql-server ×1