Как правильно сделать Mysql «точный» like запрос?

Имеется таблица со статьями,

В ней мне нужно найти все записи, где в статье встречается слово "trọn"
SELECT * FROM `url_content` WHERE `content` LIKE '% trọn %' limit 2


Как правильно сделать запрос, чтобы НЕ находились похожие слова, к примеру: "tron", trơn" и так далее ?
  • Вопрос задан
  • 564 просмотра
Решения вопроса 1
Mouvdy
@Mouvdy Автор вопроса
Моим вариантом решения стало следующее:

Можно было LIKE, но я пошел путем MATCH AGAINTS так как все статьи весят порядка 70 GB.

А далее на PHP - strpos(); для поиска конкретного ключа.

Так оказалось быстрее всего.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@Akina
Сетевой и системный админ, SQL-программист.
  1. Использовать не LIKE, а функции поиска подстроки (INSTR или LOCATE)
  2. Задать требуемый collation (вплоть до BINARY)
Ответ написан
Комментировать
BasiC2k
@BasiC2k
.NET developer (open to job offers)
Учите регулярные выражения. Тогда Вы сможете построить запрос предельно точно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы