我试图在视图中使用OPTION (MAXRECURSION 0)
来生成日期列表。 这似乎是不受支持的。有没有解决这个问题的方法?我可以在Sql Server 2005视图中使用递归吗?
编辑解释什么我其实想做的事:
我有2个表。
表1:INT工作日,布尔提供
表2:日期时间日期,布尔提供
我想要的结果: 厂景:日期(这里在今年的所有天),用(从表2或table1不在表2中时)。
这意味着我必须在一个工作日的日期申请加入。 我希望这个解释是可以理解的,因为我实际上在查询中使用更多的表格和更多的字段。
我发现这个代码来生成递归:
WITH Dates AS
(
SELECT cast('2008-01-01' as datetime) Date
UNION ALL
SELECT Date + 1
FROM Dates
WHERE Date + 1 < DATEADD(yy, 1, GETDATE())
)
我通过与日期和星期几为列数据库中创建一个额外的表解决了这个问题。我在2037年为下一个开发人员设置了千年虫... – Paco 2008-11-01 16:01:15