Re: now() vs 'epoch'::timestamp - Mailing list pgsql-general

From Stephen Frost
Subject Re: now() vs 'epoch'::timestamp
Date
Msg-id 20150401185910.GR3663@tamriel.snowman.net
Whole thread Raw
In response to now() vs 'epoch'::timestamp  (James Cloos <cloos@jhcloos.com>)
Responses Re: now() vs 'epoch'::timestamp
List pgsql-general
James,

* James Cloos (cloos@jhcloos.com) wrote:
> I've for some time used:
>
>    (now()::timestamp without time zone - 'epoch'::timestamp without time zone)::reltime::integer
>
> to get the current seconds since the epoch.  The results are consistant
> with date +%s.
>
> (Incidently, is there a better way in 9.4?)

Uh, select extract('epoch' from now()); ?

> But I found the 'epoch'::timestamp + $THAT_VALUE::reltime was off.
>
> I consitantly get 1970-01-01 06:00 plus a fraction of a second from:
>
> select now() -  ((now()::timestamp without time zone - 'epoch'::timestamp without time
zone)::reltime::integer)::reltime;
>
> The machines on which I've tried it all have localtime == UTC.
>
> Am I missing something obvious?

The only thing I'd say about this is that you *really* want to use
timestamptz in PG for storing timestamps.

> Also, is there any way to get the equiv of date +%s%N as a numeric or a
> double precision?

See above.

    Thanks!

        Stephen

Attachment

pgsql-general by date:

Previous
From: James Cloos
Date:
Subject: now() vs 'epoch'::timestamp
Next
From: Tom Lane
Date:
Subject: Re: now() vs 'epoch'::timestamp