Мой вопрос немного похож на Извлечение определенных слов из текстового поля в mysql , но теперь то же самое.
У меня есть текстовое поле со словами внутри. В моем языке слово может иметь много разных окончаний. Мне нужно найти это окончание.
Я использую полнотекстовый поиск mysql, но мне нужно иметь доступ к базе данных индекса, где все поля «обрезаются» до слов и подсчитываются слова. Затем я мог найти «тест *» и быстро найти «тест», «тестирование», «тестирование». Мне нужен список всех endigns, которые существуют в моей базе данных, это моя основная цель.
Как так, я могу получить записи с определенными словами "test *" в нем, но мне нужно не только определить местонахождение вхождения в поле, но и как-то сгруппировать, чтобы я получил список всех слов, которые, например, начать с «теста». Мне не нужно местоположение, в котором они находятся, просто список, сгруппированный таким образом, чтобы «тестирование» записывалось не 10 раз, а только один раз (возможно, счетчик того, сколько раз оно найдено, но не обязательно).
Есть ли способ извлечь эту информацию из поля fulltextsearch или я должен разбить все эти поля на слова и сделать таблицу индексов полной слов, и просто сделать "подобное" слово% "и сгруппировать по разным результатам? не знаю, как это сделать на практике, но просто укажите мне правильное направление, пожалуйста.
Итак, подведем итог: у меня есть текст, и мне нужно выяснить, какие слова находятся внутри, которые начинаются с «test», как «test», «test», «test» и т. Д ... Это не делает смысл в английском, но в моем языке это происходит так, как у нас одно и то же слово на разных концах, и их так много, иногда 20, мне нужно выяснить, какие из них есть, чтобы я мог составить таблицу синонимов;
UPDATE:
База данных содержит идентификатор столбца (int), ингредиенты (текст) и рецепт (текст).
Данные в ингредиентах - это ингредиенты для приготовления пищи с разными окончаниями, например:
1 яйцо
2 яйца
и т.д.