LIKE/正規表現検索、インデックス

http://www.thinkit.co.jp/free/marugoto/2/1/17/1.html

あくまでPostgreSQL 7.4系での注意事項であることに留意してください。

LIKE/正規表現検索

LIKEや正規表現を使うと、一部の文字列だけに一致するような、より緩やかな条件での検索が可能になります。しかし、インデックスが有効なのは前方一致かつ大文字と小文字を区別する検索のみです。したがって、大文字と小文字を区別しないILIKEや.*ではインデックスは使えません。どうしても大文字小文字を区別しない前方一致検索を高速に行いたい場合は、upper()と関数インデックスを組み合わせて使用します。

インデックス効かないのなら34万件で200msとかは健闘している気がするが要チューニング