jak zwykle mam bardzo dziwny problem,
z jakiegoś powodu wyszukiwanie pełnotekstowe nie chce działać ze słowem "of".
Niestety wyszukiwanie tak krótkich słów wymaga zmiany konfiguracji mysql'a więc nie mogę wstawić przykładu live, w związku z tym postaram się to opisać w miarę dokładnie.
U nie w bazie config jest zmieniony na
Kod
innodb_ft_min_token_size=1
ft_min_word_len=1
ft_min_word_len=1
Indeks oraz wiersze były dodawane po zmianie konfiguracji, ale dla pewności użyłem wszystkich opcji z phpmyadmina do przebudowy tabeli.
W kolumnie z indeksem full mam dodane nasypujące wiersze
Cytat
Jakis tekst z of i cos jeszcze
Jakis tekst z oo i cos jeszcze
Jakis tekst z fo i cos jeszcze
Jakis tekst z oo i cos jeszcze
Jakis tekst z fo i cos jeszcze
następnie w bazie próbuję kolejno wyszukać trzy słowa: of, oo, fo
SELECT nazwa,MATCH (sklep_towary_szukaj.nazwa ) AGAINST ('+of*' IN BOOLEAN MODE) AS 'MATCH' FROM tabela
wyniki wyglądają następująco:
słowo of:
Kod
+--------------------------------+-------+
| nazwa | MATCH |
+--------------------------------+-------+
| Jakis tekst z of i cos jeszcze | 0 |
| Jakis tekst z oo i cos jeszcze | 0 |
| Jakis tekst z fo i cos jeszcze | 0 |
+--------------------------------+-------+
| nazwa | MATCH |
+--------------------------------+-------+
| Jakis tekst z of i cos jeszcze | 0 |
| Jakis tekst z oo i cos jeszcze | 0 |
| Jakis tekst z fo i cos jeszcze | 0 |
+--------------------------------+-------+
słowo oo:
Kod
+--------------------------------+--------------------+
| nazwa | MATCH |
+--------------------------------+--------------------+
| Jakis tekst z of i cos jeszcze | 0 |
| Jakis tekst z oo i cos jeszcze | 10.634283065795898 |
| Jakis tekst z fo i cos jeszcze | 0 |
+--------------------------------+--------------------+
| nazwa | MATCH |
+--------------------------------+--------------------+
| Jakis tekst z of i cos jeszcze | 0 |
| Jakis tekst z oo i cos jeszcze | 10.634283065795898 |
| Jakis tekst z fo i cos jeszcze | 0 |
+--------------------------------+--------------------+
słowo fo:
Kod
+--------------------------------+--------------------+
| nazwa | MATCH |
+--------------------------------+--------------------+
| Jakis tekst z of i cos jeszcze | 0 |
| Jakis tekst z oo i cos jeszcze | 0 |
| Jakis tekst z fo i cos jeszcze | 1.8257453441619873 |
+--------------------------------+--------------------+
| nazwa | MATCH |
+--------------------------------+--------------------+
| Jakis tekst z of i cos jeszcze | 0 |
| Jakis tekst z oo i cos jeszcze | 0 |
| Jakis tekst z fo i cos jeszcze | 1.8257453441619873 |
+--------------------------------+--------------------+
jak widać słowo oo zostało odnalezione bardzo dobrze, słowo fo już nieco słabiej ale dalej jest wyszukiwane, natomiast słowo of nie jest znajdowane wcale.
Sprawdzałem to również dla innych tekstów typu "v 5" i tu działało prawidłowo. Jest tylko problem ze słowem of.
Macie jakiś pomysł o co może tu chodzić ? Bo mi już czułki opadają ....
