RE: [GENERAL] Re: Poor performance - need advice
От | Culberson, Philip |
---|---|
Тема | RE: [GENERAL] Re: Poor performance - need advice |
Дата | |
Msg-id | A95EFC3B707BD311986C00A0C9E95B6A9DE393@datmail03.dat.com обсуждение исходный текст |
Список | pgsql-general |
I'm pretty sure I have seen a similar post before. The problem is that Postgres assumes the constant you are using is an int4. Try casting it to int8 and see if that helps. SELECT * FROM ClientTable WHERE ClientNumber=1234566789::int8; Phil Culberson DAT Services -----Original Message----- From: Mark Alliban [mailto:MarkA@idnltd.com] Sent: Wednesday, February 02, 2000 10:16 AM To: pgsql-general@postgresql.org Subject: [GENERAL] Re: Poor performance - need advice >We have a table with 95,000 records, indexed on an int8 type (ClientNumber). >It is currently taking up to 10 seconds to retrieve one row based upon the >following statement: > >SELECT * FROM ClientTable WHERE ClientNumber=1234566789; > >The client numbers are random and there is currently no locking on the >database. I am running SCO OpenServer, PostgreSQL version 6.5.3. Is there >any way we can reduce the time taken by this query? I have tried an EXPLAIN of the above statement, and it tells me that Postgres is doing a Seq Scan on the table to return the results, even though it should be using the index. How can I make sure that it will always use the index when I specify ClientNumber? ************
В списке pgsql-general по дате отправления: