Na prefix matching je LIKE 'prefix%' v zasade v poriadku, vacsina DBMS dokaze pouzit jednoduchy index.
(pgsql index pouzjie tusim len pri lc_collate/lc_ctype C, co je v praxi dost na staru mater, kedze by to muselo byt globalne pre cely cluster. Tuzobne ocakavam, kedy bude mat PostgreSQL collation/ctype podporu plne nezavislu od libc locales a nastavitelnu na jemnejsej urovni...)
Na ostatne pripady je vhodne (resp. nevyhnutne, ked je zaznamov radovo tisice a viac) pouzit fulltext index (FTI). Kazda trochu normalna implementacia FTI ma totiz aj dalsie vyhody, vyplyvajuce z tokenizacie textu: ignorovanie vsetkeho nezaujimaveho (whitespace, non-word chars), normalizacia slov (case, diakritika, pripadne aj stemming).
Treba si len uvedomit, ze prave kvoli tokenizacii textu FTI matching nemoze byt evivalentny LIKE/ILIKE matchingu, ktory pracuje na urovni znakov (a v idealnom pripade je dokonca binary-safe).