从 PostgreSQL 中的行生成系列

Generate Series from Rows in PostgreSQL

我有一个 table of reservations,它有两列(started_atended_at)。我想构建一个查询,将预订行扩展到它们各自的日期。因此,例如,如果预订持续了 5 天,我想要为它返回 5 行。大致如下:

当前输出

id | started_at | ended_at
----------------------------
1  | 2016-01-01 | 2016-01-05
2  | 2016-01-06 | 2016-01-10

期望的输出

id | date
---------------
1  | 2016-01-01
1  | 2016-01-02
1  | 2016-01-03
1  | 2016-01-04
1  | 2016-01-05
2  | 2016-01-06
2  | 2016-01-07
2  | 2016-01-08
2  | 2016-01-09
2  | 2016-01-10

我认为 generate_series 在这里可能有用,但我不确定语法。非常感谢任何帮助

SQL Fiddle

http://sqlfiddle.com/#!15/f0135/1

这在您的 fiddle

上运行正常
SELECT id, to_char(generate_series(started_at, ended_at, '1 day'),'YYYY-MM-DD') as date
FROM reservations;