Thread: indexes with OR clauses is slow ?

indexes with OR clauses is slow ?

From
"Hiroshi Inoue"
Date:
Hello all,

While testing Index scan,I found the following phonomenon.SELECT id from xxxxxxwhere id=10 or id=11;

is very fast.

But SELECT id from xxxxxxwhere (id>=10 and id<=10)or (id>=11 and id<=11);

is very slow.
Why ?

The EXPLAIN(not verbose) output of both SQL are same 
except cost and size.
NOTICE:  QUERY PLAN:
Index Scan using xxxxxx_pkey, xxxxxx_pkey on xxxxxx  (cost=1136.17 size=197 width=4)


It seems that (id>=..) is included in indexqual but (id<=.. )
is not.

Thanks.

Hiroshi Inoue
Inoue@tpf.co.jp