如何逐周选择总有效列表的数量?

时间:2016-06-08 18:31:12

标签: sql postgresql

我希望逐周从活跃的公寓列表中获取计数。该表看起来像这样(除了更长的时间):

id      created_at          delisted_at
2318867 2014-11-12 18:57:44 Null
2329665 2014-11-14 4:36:32  Null
1431098 2014-07-25 5:45:03  Null
1930123 2014-09-28 10:10:46 2014-09-28 10:10:45
2490774 2014-12-05 0:08:47  Null

要获得一周的有效商家信息,您必须检查created_at <= end_of_weekdelisted_at > end_of_week

结果表比较长版本:

Week        Number of Active Listings
5/1/2016    3024
5/8/2016    11234
5/15/2016   11234

我还希望逐月生成另一个结果表,而不是逐周生成。

如何编写查询来实现此行为?

1 个答案:

答案 0 :(得分:0)

以下是月份的示例。首先使用=IF(A3="", SUM($A$1:A2)-SUM($B$1:B1), "") 生成月份列表。其余的只是加入和聚合:

generate_series()

类似的想法也可以使用数周。