Re: MySQL-esque sec_to_time() function

From: Zachary Beane <xach(at)xach(dot)com>
To: George Johnson <gjohnson(at)jdsc(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: MySQL-esque sec_to_time() function
Date: 2000-12-06 16:43:33
Message-ID: 20001206114333.C14297@xach.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Wed, Dec 06, 2000 at 08:27:56AM -0800, George Johnson wrote:
> Hello,
>
> I'm converting from MySQL to PostgreSQL (actually flipping/flopping
> back) and have a question:
>
> MySQL has a cool function sec_to_time() which converts your number
> of seconds to hh:mm:ss
>
> I've read thru the mailing lists and am basically trying to
> implement the following:
>
> MySQL:
> select sec_to_time(sum(unix_timestamp(enddate) - unix_timestamp(startdate))) from foo;
>
> PostgreSQL:
> select XXX(sum(date_part('epoch',enddate) - date_part('epoch',startdate))) from foo;
>
> I just need to know what XXX is/can be. I've tried a lot of
> combinations of the documented functions and come up with useless
> conversions.

You could implement sec_to_time as a SQL function:

create function sec_to_time(int4)
returns text
as '
select(to_char(''today''::timestamp + interval($1), ''HH24:MI:SS''))
' language 'sql';

However, this function would be limited to time spans of 24 hours.

Zach
--
xach(at)xach(dot)com Zachary Beane http://www.xach.com/

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Ed Loehr 2000-12-06 17:09:16 How To Log User Name + Database?
Previous Message Francis Solomon 2000-12-06 16:37:41 RE: MySQL-esque sec_to_time() function