stig erikson wrote:
hi.
i need to cast from timestamp to seconds (in the form of integer).
i have a table with a column:
expiretime timestamp
i have tried the following, it gives errors as below:
SELECT expiretime::float4 AS timeleft FROM table WHERE something='1234';
ERROR: cannot cast type timestamp without time zone to real
SELECT expiretime::text::float4 AS timeleft FROM table WHERE
something='1234';
ERROR: invalid input syntax for type real: "2005-06-12 21:21:24.368082"
postgresql 7.4.1 (i know, old)
so, my question is simply, where in the docs can i find how i should
perform the cast?
it would help a lot if there was a table showing which types can be
cased into which, and possibly an example or two for situations like
this, casting from timestamp (to timestamp worked right away).
/stig
solved my problem this way:
UPDATE table
SET expiretime= cast( ('now'::text)::timestamp+'30 minutes'::interval AS
timestamp)
WHERE sessionID='0';
---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
joining column's datatypes do not match