Re: CURRENT_TIMESTAMP vs actual time - Mailing list pgsql-general

From Scott Marlowe
Subject Re: CURRENT_TIMESTAMP vs actual time
Date
Msg-id 1114099151.13303.21.camel@state.g2switchworks.com
Whole thread Raw
In response to Re: CURRENT_TIMESTAMP vs actual time  ("Christopher J. Bottaro" <cjbottaro@alumni.cs.utexas.edu>)
List pgsql-general
On Thu, 2005-04-21 at 09:52, Christopher J. Bottaro wrote:
> Alvaro Herrera wrote:
>
> > On Thu, Apr 21, 2005 at 09:22:26AM -0500, Christopher J. Bottaro wrote:
> >> John DeSoi wrote:
> >>
> >> >
> >> > On Apr 20, 2005, at 6:15 PM, Christopher J. Bottaro wrote:
> >> >
> >> >> I understand that CURRENT_TIMESTAMP marks the beginning of the current
> >> >> transaction.  I want it to be the actual time.  How do I do this?
> >> >> timeofday() returns a string, how do I convert that into a TIMESTAMP?
> >> >
> >> > timeofday()::timestamp;
> >>
> >> Great, that did it, thanks.  I also found out that you can say
> >> CAST(timeofday() AS TIMESTAMP).  I assume its the same thing...
> >
> > Not sure it's the same thing.  IIRC, CURRENT_TIMESTAMP returns a
> > timestamp with time zone, whereas casting to timestamp unadorned returns
> > a timestamp without time zone.  Try
> >
> > cast(timeofday() as timestamptz)
> > or
> > cast(timeofday() as timestamp with time zone)
> >
> > It may not matter a lot but you may as well be aware of the difference ...
>
> Ahh, thanks for the tip.  I guess I'll just stick with
> timeofday()::timestamp...its more concise anyways...

2 points:

1: cast(timeofday() as timestamptz) is the SQL standard way of doing it,
and it's more portable.

2:  I think Alvaro's point was about timestamp with timezone, not the
format for casting.  i.e. if you use postgresql's shorthand for casting,
you could use this for timestamptz:

select timeofday()::timestamptz

pgsql-general by date:

Previous
From: Scott Marlowe
Date:
Subject: Re: Suggestions
Next
From: mmiranda@americatel.com.sv
Date:
Subject: Most specific match using between