Decimal digits in timeofday()

Started by Nicola Larosaover 24 years ago2 messagesbugs
Jump to latest
#1Nicola Larosa
nico@tekNico.net

There's a cute little bug somewhere.

While

SELECT timeofday();

returns six decimal digits,

SELECT date_part('epoch', timeofday()::timestamp);

only returns five, on a Linux Slackware 8.0 x86 machine with PostgreSQL 7.1.1 .

Please do not make me dive into C code again, already fixed a similar bug in
Zope , but in Python (it shaved off two digits instead of one, but anyway...)

Another thing, does anyone know where I could see the docs for the new
to_timestamp microsecond-aware function in 7.2?

Lastly, thanks for the fine software. Just donated 50$ to PostgreSQL Inc.,
it feels good. :^)

--
"Mozilla will be around long after nobody can remember
just quite what Internet Explorer actually used to be."
AirLace on Slashdot

Nicola Larosa - nico@tekNico.net

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Nicola Larosa (#1)
Re: Decimal digits in timeofday()

Nicola Larosa <nico@tekNico.net> writes:

There's a cute little bug somewhere.

Only that the default display precision for float8 is 15 digits.

regression=# SELECT date_part('epoch', now());
date_part
------------------
1003952920.01861
(1 row)

regression=# select '1003952920.01861'::float8;
float8
------------------
1003952920.01861
(1 row)

regression=# select '1003952920.018612'::float8;
float8
------------------
1003952920.01861
(1 row)

regression=# select '1003952920.018612'::float8 - 1003952920.0;
?column?
--------------------
0.0186120271682739
(1 row)

regression=#

regards, tom lane