在postgres中生成星期间隔的日期

Abh*_*hek 1 sql postgresql

我想要一个PostgreSQL中的系列,它给出该日期之前每个星期间隔的日期

例子

1)  Date Selected is 05/31/2013
    So the series must be :
    05/31/2013 
    05/24/2013
    05/17/2013
    05/03/2013
    04/26/2013

2)  Date Selected is 05/20/2013
    So the series must be :
    05/20/2013 
    05/13/2013
    05/06/2013
    04/29/2013
    04/22/2013
Run Code Online (Sandbox Code Playgroud)

我做了什么:

SELECT * 
FROM generate_series('2013-05-03 00:00'::timestamp,'2013-05-31 12:00', '1 weeks')
Run Code Online (Sandbox Code Playgroud)
  • 从2013-05-03开始,它提供了越来越多的系列。
  • 我想从2013-05-31开始减少系列

vye*_*rov 6

这是你要的吗?

SELECT *
  FROM generate_series('2013-05-31 12:00'::timestamp,
                       '2013-05-03', '-1 weeks');
Run Code Online (Sandbox Code Playgroud)