From: | Franco Bruno Borghesi <franco(at)akyasociados(dot)com(dot)ar> |
---|---|
To: | Patrick Hatcher <PHatcher(at)macys(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Number of months |
Date: | 2004-11-03 20:08:51 |
Message-ID: | 1099512531.40491.7.camel@taz.oficina |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
You could create your own function for the conversion, something like:
CREATE OR REPLACE FUNCTION interval2Months(INTERVAL) RETURNS INTEGER
LANGUAGE 'sql' IMMUTABLE AS '
SELECT CAST(extract(YEAR FROM $1) * 12 + extract (MONTH FROM $1) AS
INTEGER);
';
you call it doing SELECT interval2Months(age('2003-01-01'::date));
Of course, you can create a function that obtains the age directly from
a DATE parameter and then converts that value to months.
Hope it helps.
On Wed, 2004-11-03 at 15:52, Patrick Hatcher wrote:
> Is there a function that will give me the number of months, as an
> integer, in Pg 7.4.x? I found the date_trunc function but that will
> return text and I didn't see anything else?
>
> I have this, but didn't want to duplicate the work if it wasn't
> necessary:
>
> (date_part('Year', CURRENT_DATE) -date_part('Year', SOMEDATE)) * 12
> +date_part('Month', CURRENT_DATE)-date_part('Month',SOMEDATE)
>
> TIA
>
> Patrick Hatcher
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2004-11-03 20:14:59 | Re: pg_xlog |
Previous Message | Oliver Jowett | 2004-11-03 20:04:54 | Re: Avoiding explicit addDataType calls for PostGIS |