explain select * from d_trr where revision like '^B2.%.SX' --where ast_revision = 'B2.M.SX' Seq Scan on d_trr (cost=0.00..2268460.98 rows=1 width=16) Filter: ((revision)::text ~~ '^B2.%.SX'::text) show lc_collate; en_US.UTF-8 Is it that this is handled by tsearch2? Or I need to do the locale to "C" for this to function? the revision is indexed. Bitmap Heap Scan on d_trr (cost=4492.43..547709.26 rows=193453 width=16) Recheck Cond: ((revision)::text = 'B2.M.SX'::text) -> Bitmap Index Scan on idx_d_trr_iw_ast (cost=0.00..4444.06 rows=193453 width=0) Index Cond: ((revision)::text = 'B2.M.SX'::text)