Converting/formatting timestamp arithmetic

Started by Nonameabout 24 years ago2 messagesgeneral
Jump to latest
#1Noname
eel@javabox.com

Hi,
Is there any easy way to convert the result of timestamp
arithmetic to a simple decimal number?

I have something like:

select current_timestamp - timein as daysat from transcations

daysat looks like:

3 days 12:00:00

I want it to look like:

3.5

I fooled around a bit to_number(text, text). It seems like
I would need something that would parse out the days and hours
or else a global formatting flag. I guess I could write my
own function, but was wondering if there's some better way.

Thanks!

#2Karel Zak
zakkr@zf.jcu.cz
In reply to: Noname (#1)
Re: Converting/formatting timestamp arithmetic

On Thu, Mar 07, 2002 at 05:42:00PM -0800, Eel wrote:

Hi,
Is there any easy way to convert the result of timestamp
arithmetic to a simple decimal number?

I have something like:

select current_timestamp - timein as daysat from transcations

daysat looks like:

3 days 12:00:00

I want it to look like:

3.5

test=# select date_part('d', '3 days 12:00:00'::interval) + (1 / (24 /
date_part('h', '3 days 12:00:00'::interval)));
?column?
----------
3.5

test=# select date_part('d', '3 days 6:00:00'::interval) + (1 / (24 /
date_part('h', '3 days 6:00:00'::interval)));
?column?
----------
3.25

I fooled around a bit to_number(text, text). It seems like

IMHO better is extract relavant values and count it.

Karel

--
Karel Zak <zakkr@zf.jcu.cz>
http://home.zf.jcu.cz/~zakkr/

C, PostgreSQL, PHP, WWW, http://docs.linux.cz, http://mape.jcu.cz