From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Stephen Birch" <sgbirch(at)hotmail(dot)com> |
Cc: | pgsql-general(at)postgreSQL(dot)org |
Subject: | Re: timestamped archive data index searches |
Date: | 2002-07-20 19:11:24 |
Message-ID: | 12602.1027192284@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
"Stephen Birch" <sgbirch(at)hotmail(dot)com> writes:
> I also tried the following, which explain said is also using a sequence scan
> :-(
> SELECT sum(vol) FROM det
> WHERE tstamp > (current_timestamp - '5 seconds'::interval);
This doesn't work (in 7.2 and before) because the planner doesn't think
current_timestamp is a constant. You can get around that with a custom
function that hides the current_timestamp computation and is marked
isCachable --- this is a cheat but works well enough in interactive
queries. (It'd not work inside plpgsql unfortunately.) See past
archived discussions --- searching for isCachable should turn up
examples.
Beginning in 7.3 there will be a finer-grain notion of constant
functions so that the planner can optimize this sort of thing as-is.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Stephen Birch | 2002-07-20 19:29:08 | Re: timestamped archive data index searches |
Previous Message | Tom Lane | 2002-07-20 18:49:49 | Re: domain access privilege |