Sqlserver递归生成日期范围

一、业务背景

有时候需要按天生成数据,需要用到日期表进行循环处理

 

二、sql脚本

;WITH DateRange AS
(
SELECT 1 AS Seq, '2024-01-01' AS DateValue
UNION ALL
SELECT Seq+1 Seq, CONVERT(VARCHAR(10),DATEADD(Day,1,DateValue) ,23)   AS DateValue
FROM DateRange
WHERE DateValue<='2024-07-19'
)
--INSERT INTO #date_tables
SELECT * FROM DateRange OPTION(MAXRECURSION 0)

 

三、执行结果

 

 

posted @ 2024-08-08 19:13  lanrenka  阅读(27)  评论(0编辑  收藏  举报