Re: Generate a series of single days from a table of intervals. - Mailing list pgsql-novice

From David G. Johnston
Subject Re: Generate a series of single days from a table of intervals.
Date
Msg-id CAKFQuwY0O3bDbGmkvQ_V6m6L6pi_m4ZTr48VANnaXPO8yy4DvA@mail.gmail.com
Whole thread Raw
In response to Generate a series of single days from a table of intervals.  (Paul Linehan <linehanp@tcd.ie>)
Responses Re: Generate a series of single days from a table of intervals.
List pgsql-novice
On Wed, Jul 27, 2016 at 12:57 PM, Paul Linehan <linehanp@tcd.ie> wrote:

I wish to generate a series of dates

from these intervals and
also to generate the intervening dates with a status of 0 (say

​See "LEFT JOIN"​ and "COALESCE"
 

The output I need is:

date_val       status

2016-04-01       0
2016-04-02       1
2016-04-03       1
2016-04-04       1
2016-04-05       1
2016-04-06       0
 
2016-04-02       0

​Typo?​

 
..
..<status as appropriate for the rest of the month>
..
2016-04-30       0


I would like to do this using a recursive CTE if it's the best solution,
but I'm open to other approaches - different approaches appreciated.


​Really?  That should be the last choice of execution strategy. 

This isn't a tree, I'm doubtful that a recursive CTE is needed.


CREATE TABLE testdate (datein date, dateout date, status int);

INSERT  INTO testdate VALUES ('2016-04-02', '2016-04-05', 1);
INSERT  INTO testdate VALUES ('2016-04-15', '2016-04-18', 1);
INSERT  INTO testdate VALUES ('2016-04-25', '2016-04-30', 1);

 
​David J.​

pgsql-novice by date:

Previous
From: Paul Linehan
Date:
Subject: Generate a series of single days from a table of intervals.
Next
From: Paul Linehan
Date:
Subject: Re: Generate a series of single days from a table of intervals.