Postgresql-Präfix-Platzhalter für Volltext

Ich versuche, eine Volltextabfrage mit Postgresql auszuführen, die teilweise Übereinstimmungen mit Platzhaltern berücksichtigen kann.

Es scheint einfach genug zu sein, nach dem Suchbegriff ein Postfix-Platzhalterzeichen einzufügen, ich kann jedoch nicht herausfinden, wie ein Präfix-Platzhalterzeichen angegeben wird.

Zum Beispiel kann ich eine Postfix-Suche mit so etwas wie einfach genug durchführen.

SELECT "t1".* 
FROM "t1" 
WHERE (to_tsvector('simple', "t1"."city") @@ to_tsquery('simple', 'don:*') )

sollte Ergebnisse zurückgeben, die mit "London" übereinstimmen

Jedoch kann ich nicht scheinen, eine Präfixsuche wie zu tun ...

SELECT "t1".* 
FROM "t1" 
WHERE (to_tsvector('simple', "t1"."city") @@ to_tsquery('simple', ':*don') )

Im Idealfall möchte ich ein Platzhalterzeichen vor und hinter dem Suchbegriff haben, so etwas wie ...

SELECT "t1".* 
FROM "t1" 
WHERE (to_tsvector('simple', "t1"."city") @@ to_tsquery('simple', ':*don:*') )

Ich kann eine LIKE-Bedingung verwenden, aber ich hatte gehofft, von der Leistung der Volltextsuchfunktionen in Postgres zu profitieren.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage