2012-02-27 1 views
0

выбирает только у меня есть точная проблема, как описано на MySQL Match FulltextДобавить «точка/период» символ в качестве поиска слова на MySQL InnoDB полнотекстовые

мне нужно сделать поиск с «» (точка), я использую MySQL 5.6.4, моя таблица имеет механизм innodb из-за того, что мне нужно использовать некоторые ключи от иностранцев, поле «полное имя» имеет полнотекстовый индекс witg utf8_general_ci и имеет около 34k + записей, у меня есть в моей конфигурации ini ft_min_word_len = "2" and ft_stopword_file ="" в любом случае, это работа отлично со словами, проблема заключается только в период знак

, так что если я попытался найти с% li KE%

WHERE `fullname` LIKE '%1.9%' 
1,061 total, 0.0316 seg 

    156 1.9 JTD Impression 
    147 1.9 D 
    159 1.9 JTS 
    GT 1.9 JTD 16V M-Jet Impression 
    159 Sportwagon 1.9 JTD 
    159 1.9 JTD 

С матча против

WHERE MATCH (
fullname 
) 
AGAINST (
'1.9' 
IN BOOLEAN 
MODE 
) 
0 total, 0.0048 seg 

Что я могу сделать? Thanks

+0

Теперь мы можем выполнять полнотекстовый поиск на InnoDB? –

+1

@Marcus: Да, это окончательно в конвейере девелла. Не уверен, какая у него версия (или она все еще находится в лабораториях), но ... woo! оно приближается. обновление: http://blogs.innodb.com/wp/2011/12/innodb-full-text-search-in-mysql-5-6-4/ –

+0

5.6.4 поставляется с ним – Colas

ответ

1

Я пытался найти ответ на тот же вопрос, и, похоже, сейчас нет хорошего способа справиться с этим, потому что «.» используется как разделитель. На данный момент я заменяю "." с «__pd» при вставке строки и при запросе таблицы. Не идеальный, но он работает для меня.

 Смежные вопросы

  • Нет связанных вопросов^_^