Получить список дат между двумя датами, используя функцию

Мой вопрос похож наэтот MySQL вопрос, но предназначен для SQL Server:

Есть ли функция или запрос, который будет возвращать список дней между двумя датами? Например, допустим, есть функция ExplodeDates:

SELECT ExplodeDates('2010-01-01', '2010-01-13');

Это вернет таблицу из одного столбца со значениями:

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

Я думаю, что таблица календаря / чисел может помочь мне здесь.

Обновить

Я решил взглянуть на три предоставленных кодовых ответа, и результаты выполнения - как% от общего пакета -:

Роб Фарлиответ : 18%StingyJack»ответ : 41%КМ»ответ : 41%

Ниже - лучше

Я принял Роба ФарлиОтвет, так как он был самым быстрым, даже несмотря на то, что решения с таблицами чисел (используемые как KM, так и StingyJack в своих ответах) являются моими любимыми. Роб Фарлис был на две трети быстрее.

Обновление 2

Alivia-хответ гораздо более кратким. Я изменил принятый ответ.

Ответы на вопрос(21)

Ваш ответ на вопрос