I suspected that this would be the answer.
On 7 October 2012 16:46, Daniele Varrazzo <daniele.varrazzo@xxxxxxxxx> wrote:
Didn't realize intervals store months/days info separately: I thoughtOn Sun, Oct 7, 2012 at 3:03 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
> Daniele Varrazzo <daniele.varrazzo@xxxxxxxxx> writes:
>> Note: it exploits to_date() parsing '200013' as '2001-01', which is
>> reasonable but haven't found documented and don't know how much
>> reliable. Writing a safer "one month later" function is left as
>> exercise.
>
> Consider adding '1 month'::interval to the month start date.
>
> (This function relies on text-munging way too much for my taste.
> There's almost always a better way to do it than that.)
an interval was just a vector in the timestamp space. Nice surprise.
-- Daniele