我的问题类似于这个 MySQL问题,但是用于SQL Server:
是否有函数或查询将返回两个日期之间的天数列表?例如,假设有一个名为ExplodeDates的函数:
SELECT ExplodeDates('2010-01-01', '2010-01-13');
Run Code Online (Sandbox Code Playgroud)
这将返回一个包含以下值的列表:
2010-01-01
2010-01-02
2010-01-03
2010-01-04
2010-01-05
2010-01-06
2010-01-07
2010-01-08
2010-01-09
2010-01-10
2010-01-11
2010-01-12
2010-01-13
Run Code Online (Sandbox Code Playgroud)
我认为日历/数字表可能能够帮助我.
更新
我决定查看提供的三个代码答案,执行结果 - 占总批次的百分比 - 是:
越低越好
我已经接受了Rob Farley的答案,因为它是最快的,尽管数字表解决方案(KM和StingyJack在他们的答案中使用)都是我的最爱.Rob Farley的速度提高了三分之二.
更新2
阿丽维亚的答案更为简洁.我已经改变了接受的答案.