Query is:
select * from dict
where
word in (select substr('moon', 0, generate_series(3,length('moon')))) -- this is my X above
OR word like 'moon%' -- this is my Y above
where
word in (select substr('moon', 0, generate_series(3,length('moon')))) -- this is my X above
OR word like 'moon%' -- this is my Y above
dict is indexed on word
2009/7/20 Chris <dmagick@xxxxxxxxx>
2009/7/20 Robert James <srobertjames@xxxxxxxxx <mailto:srobertjames@xxxxxxxxx>>
Hi. I notice that when I do a WHERE x, Postgres uses an index, and
when I do WHERE y, it does so as well, but when I do WHERE x OR y,
it doesn't. Why is this so?
What Robert didn't post was his query, see
http://archives.postgresql.org/pgsql-general/2009-07/msg00767.php
which makes it a lot harder to 'optimize' since they aren't straight forward conditions.