Thread: timestamp precision - can I control precision at select time or set for all time?

timestamp precision - can I control precision at select time or set for all time?

From
"mroyce@gmail.com"
Date:
I have a database with several tables that use timestamp without time
zone type. I upgraded from an older pgsql and have code that does not
expect the precision in the select output. Is there a way I can get the
effect of zero precision without modifying all the tables?

The docs say it usees "default precision" as set in the "timestamp
literal". I wasn't able to find docs describing what literals are. If
there's a way I can set this to zero precision for everything, that'd
save me a bunch of time.

with thanks,
Royce



Re: timestamp precision - can I control precision at select time

From
Christoph Haller
Date:
"mroyce@gmail.com" wrote:
> 
> I have a database with several tables that use timestamp without time
> zone type. I upgraded from an older pgsql and have code that does not
> expect the precision in the select output. Is there a way I can get the
> effect of zero precision without modifying all the tables?
> 
> The docs say it uses "default precision" as set in the "timestamp
> literal". I wasn't able to find docs describing what literals are. If
> there's a way I can set this to zero precision for everything, that'd
> save me a bunch of time.
> 
> with thanks,
> Royce
> 

I was facing the same obstacle. 
The only cure I've found was either 
SELECT CURRENT_TIMESTAMP ;        timestamptz          
------------------------------2005-03-22 09:43:51.05193+01
(1 row)
SELECT CURRENT_TIMESTAMP::TIMESTAMP(0) ;     timestamp      
---------------------2005-03-22 09:44:11
(1 row)

resp. change column types to TIMESTAMP(0) 
But I assume you've found this already by yourself. 

Regards, Christoph


Re: timestamp precision - can I control precision at select time

From
"mroyce@gmail.com"
Date:
thanks, christoph. i did go ahead and retool all the tables, but glad
to know about the casting option.