У меня есть таблица MySQL, содержащая данные о событиях.Поиск проблем в MySQL таблице с использованием MATCH AGAINST
В этой таблице у меня есть индекс FULLTEXT, включающий event_title, event_summary, event_details типов varchar, текст, текст соответственно.
Примеры названий включают в себя: «Количество подключений», «Первая помощь», «Здоровье & Безопасность».
я могу найти таблицу следующим образом:
SELECT * FROM events WHERE MATCH (event_title,event_summary,event_details) AGAINST ('connections');
который возвращает события, названные «Connections Подсчитайте» нет проблем.
Однако, независимо от того, что я стараюсь, я получаю пустой результирующий набор при выполнении следующих запросов:
SELECT * FROM events WHERE MATCH (event_title,event_summary,event_details) AGAINST ('first aid');
SELECT * FROM events WHERE MATCH (event_title,event_summary,event_details) AGAINST ('first');
SELECT * FROM events WHERE MATCH (event_title,event_summary,event_details) AGAINST ('aid');
Я попытался переименовать событие, чтобы «Rich Aid» и может искать то, что просто отлично. Кроме того, «First Rich» отлично работает.
Любые идеи, почему это происходит или как исправить это было бы здорово!
Спасибо за ваше время.
Rich
Aha! Я искал аналогичный зарезервированный список слов, который «первым» не был включен. Несомненно, есть способ поиска «Первой помощи», используя этот запрос? – Rich
Это казалось неправильным ^^ Просто измените файл/myisam/ft_static.c, чтобы изменить его. – MatTheCat
Изменить «storage/myisam/ft_static.c» (не знаю, читаете ли вы предыдущий пост) – MatTheCat