On Wed, Nov 05, 2008 at 08:52:50PM +0200, Andrus wrote:
> explain analyze select * from firma2.dok where  dokumnr='1228137'::float8
> 
> "Seq Scan on dok  (cost=0.00..187766.23 rows=6255 width=1145) (actual 
> time=43168.460..43176.063 rows=1 loops=1)"
> "  Filter: ((dokumnr)::double precision = 1228137::double precision)"
> "Total runtime: 43176.375 ms"
> 
> shows that index is not used and thus query takes very long time.
> 
> How to force PostgreSql to speed up without changing query ?

I'm not sure if PG 8.1 will recognize it, but you could try creating a
functional index on the column when cast to the appropriate type.  I.e:

  CREATE INDEX dok_dokumnr_float8_idx ON dok (((dokumnr)::double precision));


  Sam

-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to