使用遞迴 CTE 生成日期範圍
使用遞迴 CTE,你可以生成包含範圍的日期:
Declare @FromDate Date = '2014-04-21',
@ToDate Date = '2014-05-02'
;With DateCte (Date) As
(
Select @FromDate Union All
Select DateAdd(Day, 1, Date)
From DateCte
Where Date < @ToDate
)
Select Date
From DateCte
Option (MaxRecursion 0)
預設的 MaxRecursion
設定為 100.使用此方法生成超過 100 個日期將需要查詢的 Option (MaxRecursion N)
段,其中 N
是所需的 MaxRecursion
設定。將此設定為 0
將完全取消 MaxRecursion
限制。