Re: SELECT * FROM t where p or q; - Mailing list pgsql-sql

From Tom Lane
Subject Re: SELECT * FROM t where p or q;
Date
Msg-id 29635.1006270833@sss.pgh.pa.us
Whole thread Raw
In response to SELECT * FROM t where p or q;  (frbn@efbs-seafrigo.fr)
List pgsql-sql
frbn@efbs-seafrigo.fr writes:
> on a +10 millions rec table, a simple select:
> SELECT * FROM tab where num = x;
> time: 5 secondes

> SELECT * FROM tab WHERE num = x OR num = y;
> time: more than 10 mn !!!

What does EXPLAIN show?  Have you VACUUM ANALYZEd the table recently
(or indeed ever)?  This looks a lot like the behavior on a
never-vacuumed table --- the default statistical assumptions are such
that an indexscan looks like a win for one equality clause, but not
for two ORed clauses.
        regards, tom lane


pgsql-sql by date:

Previous
From: Andriy Pyrozhenko
Date:
Subject: Re: Rule
Next
From: Bruce Momjian
Date:
Subject: Re: [ADMIN] Genetic algorithms