Alvaro Herrera <[EMAIL PROTECTED]> writes: > Tiago Daniel Jacobs wrote: >> " -> Index Scan using idx_agreg_sig_2007_09__data_dt_data on >> agreg_sig_2007_09 agreg_sig (cost=0.00..8.70 rows=1 width=59) (actual >> time=7.143..4924.607 rows=178866 loops=1)" >> " Index Cond: ((data_dt_data >= '2007-09-01'::date) AND >> (data_dt_data <= '2007-09-01'::date))"
> Please do ANALYZE agregados.agreg_sig and try the query again. The > indexscan is grossly misestimated. Not sure that it's ANALYZE's fault. Since we currently use the same selectivity estimators for > and >= (and likewise for < and <=), we have no hope of getting edge cases correct. Most of the time the stats are crude enough that it doesn't matter, but sometimes the edge value is common and then it does matter. I've been wondering if it would be worth the trouble to introduce scalarlesel and scalargesel estimators ... regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match