Hello.
I recently posted this question on pgsql-novice and received no
answer. Undaunted, I'm trying again on pgsql-sql. Perhaps someone
knows at least where to start looking for an answer to this problem.
It's not in the FAQ, and I couldn't find an answer in the mailing list
archives.
I have a table that includes a column of type timestamp. I'd like to
formulate a query that returns, say, all rows no more than 24 hours
old, based on the timestamp. Trial and error got me this far (and a
perusal of the mailing list archives confirmed it):
SELECT * FROM table WHERE loaded_time >= 'now'::timestamp - '1 days'::timespan ORDER BY loaded_time DESC;
This works fine in PostgreSQL 6.4.2. However, another user of my
software, who has PostgreSQL 6.3.2, reports that he gets the following
error message:
ERROR: There is no operator '-' for types 'timestamp' and 'timespan' You will either have to retype this query using
anexplicit cast, or you will have to define the operator using CREATE OPERATOR
So. Is there a correct solution to this problem that works for all
versions of PostgreSQL--or at least, PostgreSQL versions 6.3.2 and
higher? Barring that, is there at least a solution at all for 6.3.2,
which may or may not be different from the solution for 6.4.2 and
higher?
Many thanks.
David