Standardmäßig indizieren MySQL-FULLTEXT-Indizes keine Wörter, die kürzer als 4 Zeichen sind (für MyISAM-Tabellen). Wenn Sie 3-Buchstaben-Wörter indizieren möchten, müssen Sie die ft_min_word_len
Systemvariable (oder innodb_ft_min_token_size
für InnoDB) auf einen Wert von 3 oder niedriger, starten Sie dann mysqld neu und bauen Sie Ihre Tabelle neu auf.
Fügen Sie dies beispielsweise zu [mysqld]
hinzu Abschnitt Ihrer my.cnf-Datei:
ft_min_word_len=3
Starten Sie dann mysqld neu.
Führen Sie dann diesen Befehl aus, um die Tabelle neu zu erstellen:
alter table `tbladvertstest` force;
Jetzt sollte Ihre Abfrage funktionieren:
mysql > SELECT *
-> FROM `tbladvertstest`
-> WHERE MATCH (`SearchCompany`) AGAINST ('+"All Bar One"' IN BOOLEAN MODE) ;
+----+---------------+
| id | SearchCompany |
+----+---------------+
| 1 | All Bar One |
+----+---------------+
1 row in set (0.00 sec)