Opties voor zoeken en indexeren van tekst zijn onder meer:
-
full-text indexering met op woordenboeken gebaseerd zoeken, inclusief ondersteuning voor zoeken op voorvoegsels, bijv.
to_tsvector(mycol) @@ to_tsquery('search:*') -
text_pattern_opsindexen om voorvoegselreeksovereenkomsten te ondersteunen, bijvoorbeeldLIKE 'abc%'maar niet infix-zoekopdrachten zoals%blah%;. Eenreverse()d index kan worden gebruikt voor het zoeken naar achtervoegsels. -
pg_tgrmtrigram-indexen op nieuwere versies zoals aangetoond in deze recente dba .stackexchange.com bericht . -
Een externe zoek- en indexeringstool zoals Apache Solr .
Op basis van de minimale informatie die hierboven is gegeven, zou ik zeggen dat alleen een trigram-index je kan helpen, omdat je infix-zoekopdrachten uitvoert op een string en niet op zoek bent naar woordenboekwoorden. Helaas zijn trigram-indexen enorm en nogal inefficiënt; verwacht geen magische prestatieverbetering en onthoud dat het veel werk kost om de database-engine te bouwen en up-to-date te houden.