John A Meinel wrote:
> I believe the problem is that postgres doesn't recognize how restrictive
> a date-range is unless it uses constants.
And it does when using BETWEEN with int for example? Impressive. :-)
> select blah from du WHERE time between '2004-10-10' and '2004-10-15';
> Will properly use the index, because it realizes it only returns a few
> rows.
Correct, it does.
> Probably you should try to find out the status of multi-table
> selectivity. It was discussed in the last couple of months.
I can't find the posts you are refering to. What is the priciple of
multi-table selectivity?
Your explanation sounds very plausible.. I don't mind changing the
cpu_tuple_cost before running BETWEEN with timestamps, they are easy
enough to spot.
Thanks,
--
Richard van den Berg, CISSP
-------------------------------------------
Trust Factory B.V. | www.dna-portal.net
Bazarstraat 44a | www.trust-factory.com
2518AK The Hague | Phone: +31 70 3620684
The Netherlands | Fax : +31 70 3603009
-------------------------------------------