Re: Strange behavior in generate_series(date, date, interval) with DST

From: Francisco Olarte <folarte(at)peoplecall(dot)com>
To: Sérgio Saquetim <sergiosaquetim(at)gmail(dot)com>
Cc: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Strange behavior in generate_series(date, date, interval) with DST
Date: 2014-12-08 09:27:47
Message-ID: CA+bJJbz13Jf7XHMZU3ugWZVbdZE1CTY=DetjmYw1cVqo_A_EUw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi Sérgio:

On Sun, Dec 7, 2014 at 9:11 PM, Sérgio Saquetim <sergiosaquetim(at)gmail(dot)com>
wrote:

> I've noticed a strange behavior in the generate_series functions.
>
> I'm trying to get all days between a start and an end date including the
> bounds. So naturally I've tried something like the query below
> ​.
>

As both your examples and previous responses highlight your problem is that
generate_series is not defined for dates, I'll avoid further comments on
this. As you are using dates and your working example is using dates I
would suggest rewriting your query around to avoid implicits cast problems.
Date difference is integer, generate_series is defined on them, so:

=> select generate_series(0,'2014-10-20'::date - '2014-10-10'::date);
generate_series
-----------------
0
1
2
3
4
5
6
7
8
9
10
(11 rows)

cdrs=> select '2014-10-10'::date+ generate_series(0,'2014-10-20'::date -
'2014-10-10'::date);
?column?
------------
2014-10-10
2014-10-11
2014-10-12
2014-10-13
2014-10-14
2014-10-15
2014-10-16
2014-10-17
2014-10-18
2014-10-19
2014-10-20
(11 rows)

Or even

=> select ini + generate_series(0, fin-ini) from (select '2014-10-10'::date
as ini, '2014-10-20'::date as fin) data ;
?column?
------------
2014-10-10
2014-10-11
2014-10-12
2014-10-13
2014-10-14
2014-10-15
2014-10-16
2014-10-17
2014-10-18
2014-10-19
2014-10-20
(11 rows)

Regards
Francisco Olarte.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message chris.jurado 2014-12-08 10:05:49 Idle Sessions inTransaction with RELEASE_EXEC_SVP queries and locks
Previous Message Eric Svenson 2014-12-08 08:21:28 Re: Fwd: Fwd: Problem with pg_dump and decimal mark