Генерация временных рядов между двумя датами в PostgreSQL

У меня есть такой запрос, который приятно генерирует серию дат между двумя данными датами:

select date '2004-03-07' + j - i as AllDate 
from generate_series(0, extract(doy from date '2004-03-07')::int - 1) as i,
     generate_series(0, extract(doy from date '2004-08-16')::int - 1) as j

Генерирует 162 даты между2004-03-07 а также2004-08-16 и это то, что я хочу. Проблема с этим кодом в том, что он недать правильный ответ, когда две даты из разных лет, например, когда я пытаюсь2007-02-01 а также .2008-04-01

Есть ли лучшее решение?

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

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