小编BDa*_*Dad的帖子

在 PostgreSQL 中为 2 个日期之间的每个月创建一行

我需要为表中每个人的 2 个日期之间的每个月创建一行(结果应该是当月的第一天)。例如,如果我的源表中有以下数据:

rowID | person      | startdate   | enddate
1     | 12345       | 2014-04-01  | 2014-11-30
2     | 67890       | 2014-03-01  | 2014-05-01
Run Code Online (Sandbox Code Playgroud)

我希望我的目标表中的结果是:

person | month
12345  | 2014-04-01
12345  | 2014-05-01
12345  | 2014-06-01
12345  | 2014-07-01
12345  | 2014-08-01
12345  | 2014-09-01
12345  | 2014-10-01
12345  | 2014-11-01
67890  | 2014-03-01
67890  | 2014-04-01
67890  | 2014-05-01
Run Code Online (Sandbox Code Playgroud)

非常感谢帮忙。

postgresql date-range generate-series postgresql-9.3

6
推荐指数
1
解决办法
3902
查看次数