From: | Steve Crawford <scrawford(at)pinpointresearch(dot)com> |
---|---|
To: | ng <pipelines(at)gmail(dot)com>, pgsql-sql(at)postgresql(dot)org |
Subject: | Re: PGsql function timestamp issue |
Date: | 2014-05-29 21:13:02 |
Message-ID: | 5387A2DE.20207@pinpointresearch.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
On 05/29/2014 01:46 PM, ng wrote:
>
> create or replace function dw.fx_nish()
> returns text
> language plpgsql
> as
> $$
> declare
> x timestamp with time zone;
> y timestamp with time zone;
> begin
> x:= current_timestamp;
> perform pg_sleep(5);
> y:= current_timestamp;
> if x=y then
> return 'SAME';
> else
> return 'DIFFERENT';
> end if;
>
> end;
> $$
>
>
> select dw.fx_nish()
> This give me 'SAME'
>
> Any work around for this?
No and yes.
The value of current_timestamp will remain constant throughout a
transaction so the function is returning the expected result.
You can use timeofday() but since that returns a string representing
wall-clock time and does increment within a transaction. To get a
timestamptz you will need to cast it: timeofday()::timestamptz
Cheers,
Steve
From | Date | Subject | |
---|---|---|---|
Next Message | bricklen | 2014-05-29 22:00:05 | Re: PGsql function timestamp issue |
Previous Message | Jonathan S. Katz | 2014-05-29 20:52:32 | Re: PGsql function timestamp issue |