2016-04-16 13 views
0

Ich führe eine Volltextsuche auf einem "Name" -Index, aber ich habe den Namen "Will" ignoriert, weil das Wort "wird" in der Ignorierliste ist.Suche nach dem Namen "Will" in einer Mysql Volltextsuche

Meine Datenbank ist in einem Shared Hosting gehostet, kann nicht konfiguriert werden. Was ist eine mögliche Lösung für die korrekte Suche?

+0

Versuchen Sie binäre Sortierung. –

Antwort

1

Wie MySQL-Dokumentation auf fulltext search stop word says:

Die Stoppwort-Liste wird für Volltextabfragen mit dem Serverzeichensatz und Sortier (die Werte des character_set_server und collation_server Systemvariablen) geladen und durchsucht. Falsche Hits oder Fehlschläge können bei Stoppwortsuchen auftreten, wenn die Stoppordendatei oder Spalten, die für die Volltextindizierung oder Suchvorgänge verwendet werden, ein Set oder eine Kollatierung haben, die sich von character_set_server oder collation_server unterscheidet.

Die Groß- und Kleinschreibung von Stoppwortsuchen hängt von der Server-Sortierung ab. Zum Beispiel wird bei der Suche die Groß-/Kleinschreibung ignoriert, wenn die Sortierung latin1_swedish_ci ist, während bei Nachschauten die Groß-/Kleinschreibung beachtet wird, wenn die Sortierung latin1_general_cs oder latin1_bin ist.

Die Server-Sortierung kann dynamisch auf Session-Ebene gesetzt Bet (zumindest in v5.7). Versuchen Sie also, es auf eine binäre Sortierung einzustellen.