Ron Peterson writes: > On Wed, Oct 18, 2006 at 04:43:40PM -0400, Ron Peterson wrote: > I'm pretty close, but I'm still not understanding something about > PostgreSQL's internal timestamp representation. If I do 'select > now();', I get a return value with microsecond resolution, which would > seem to indicate that internally, PostgreSQL is using an INT64 value > rather than a float to hold the timestamp. Floating point timestamps /do/ have microsecond resolution over a limited range: ,----[ <http://www.postgresql.org/docs/8.1/static/datatype-datetime.html> ] | Microsecond precision is achieved for dates within a few years of | 2000-01-01, but the precision degrades for dates further away. When | timestamp values are stored as eight-byte integers (a compile-time | option), microsecond precision is available over the full range of | values. `---- > My function below, however, always takes the float path through the > ifdef. If I force the int64 path, I just get a garbage timestamp > which still only has a seconds resolution. The proper way to enable the int64 path is enabling integer timestamps during build-time: ,----[ ./configure --help|grep time ] | --enable-integer-datetimes enable 64-bit integer date/time support `---- regards, andreas