2015-12-03 4 views
2

Как искать ключевые слова «любовь» в полнотекстовом индексном режиме? Или эта ситуация подходит для полнотекстового поиска? Любой ответ будет оценен.Как сделать следующий полнотекстовый поиск в mysql?

Например

  • колонна содержит следующие слова с остановки слова "_":

  • "I_love_you",

  • "He_is_cute",

..

+0

Я совершенно уверен, что вы имеете в виду. но есть 'SELECT t. * FROM table t WHERE text_field LIKE '% love%'' должно быть достаточно для поиска ключевого слова _love_ в вашей таблице – David

+0

Спасибо за ваш ответ. Но подобный режим является катастрофой, когда записи велики. –

ответ

0

MySQL поддерживает индексы FULLTEXT с версии 3.23.23. VARCHAR и TEXT Столбцы, индексированные с помощью FULLTEXT, могут использоваться с специальными операторами SQL, которые выполняют полный текстовый поиск в MySQL.

Вот как можно добавить индекс FULLTEXT к некоторым столбцам таблицы.

ALTER TABLE table_name ADD FULLTEXT(column_name); 

Вы также можете добавить несколько столбцов.

ALTER TABLE table_name ADD FULLTEXT(column_name,column_name,column_name); 

После того, как у вас есть полнотекстовый индекс, вы можете найти его с помощью MATCH и против заявлений. Например:

SELECT column_name FROM table_name 
WHERE MATCH (column_name) AGAINST ('Love'); 

SELECT column_name,column_name FROM table_name 
WHERE MATCH (column_name,column_name) AGAINST ('Love'); 
+0

Спасибо. Но этот способ не может работать хорошо. Результат всегда пуст. –

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