Thread: to_char(interval) ?

to_char(interval) ?

From
Theodore Petrosky
Date:
how do I get an interval '1 day 1 hour' to display as
'25 hours'. I am hunting in the docs (and googling)
and either I am blind or I need a special function?

Is there an easy way?

Ted

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


Re: to_char(interval) ?

From
Bruno Wolff III
Date:
On Sun, Apr 24, 2005 at 13:08:04 -0700, Theodore Petrosky <tedpet5@yahoo.com> wrote:
> how do I get an interval '1 day 1 hour' to display as
> '25 hours'. I am hunting in the docs (and googling)
> and either I am blind or I need a special function?
> 
> Is there an easy way?

EXTRACT epoch from the interval and divide by 3600 and concatenate to ' hours'.

area=> select extract(epoch from '1 day 1 hour'::interval)/3600 || ' hours';?column?
----------25 hours
(1 row)


Re: to_char(interval) ?

From
Theodore Petrosky
Date:
This is perfect.

select extract(epoch from '1 day 1 hour 15
minute'::interval)/3600 || 'hours'; ?column?  
------------25.25hours
(1 row)

I must have looked at this for hours and not seen the
'interval' part of the epoch...

Thanks,

Ted

--- Bruno Wolff III <bruno@wolff.to> wrote:
> On Sun, Apr 24, 2005 at 13:08:04 -0700,
>   Theodore Petrosky <tedpet5@yahoo.com> wrote:
> > how do I get an interval '1 day 1 hour' to display
> as
> > '25 hours'. I am hunting in the docs (and
> googling)
> > and either I am blind or I need a special
> function?
> > 
> > Is there an easy way?
> 
> EXTRACT epoch from the interval and divide by 3600
> and concatenate to ' hours'.
> 
> area=> select extract(epoch from '1 day 1
> hour'::interval)/3600 || ' hours';
>  ?column?
> ----------
>  25 hours
> (1 row)
> 

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com