Thread: BUG #1122: limit 1 doing a sequential scan
The following bug has been logged online: Bug reference: 1122 Logged by: P Buder Email address: pb2@aracnet.com PostgreSQL version: 7.3.5 Operating system: Debian Linux Description: limit 1 doing a sequential scan Details: I am actually running 7.3.6 but that isn't available on the drop down menu to report a bug so there is another bug :) When I do a select * from table limit 1 Postgresql does a sequential scan on the whole table. It should just pick one row and be done with it. The table has been analyzed but that shouldn't matter. This particular table has 4.3 million rows. Here is the explain select. book=# explain select * from imdata limit 1; QUERY PLAN ---------------------------------------------------------------------- Limit (cost=0.00..55.85 rows=1 width=152) -> Seq Scan on imdata (cost=0.00..269569.27 rows=4827 width=152) (2 rows)
"PostgreSQL Bugs List" <pgsql-bugs@postgresql.org> writes: > When I do a select * from table limit 1 > Postgresql does a sequential scan on the whole table. AFAICS you simply are misreading the EXPLAIN output. (It also sounds like you haven't vacuumed or analyzed that table in a mighty long time... if you're having performance problems that is probably the reason...) regards, tom lane