Как генерировать отформатированные строки недели из дат начала и окончания - PullRequest
0 голосов
/ 28 июня 2011

Можно ли сгенерировать набор следующим образом:

April 1 2010  
April 8 2010  
April 15 2010  
April 22 2010  
April 29 2010  
May 6 2010  

и т. Д.

с начальной даты и даты окончания с использованием только SQL?

1 Ответ

3 голосов
/ 28 июня 2011

Вы можете пройти курс лечения через CTE:

declare @start datetime = '1 apr 2010'
declare @end   datetime = '6 may 2010'

;with weeks(wdate) as
(
    select @start as wdate

    union all

    select 
        dateadd(week, 1, wdate)
    from weeks
        where wdate < @end
)
select wdate
    from weeks 

2010-04-01 00:00:00.000
2010-04-08 00:00:00.000
2010-04-15 00:00:00.000
2010-04-22 00:00:00.000
2010-04-29 00:00:00.000
2010-05-06 00:00:00.000
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...