MySQL: помогите найти каждое слово в нескольких столбцах без учета регистра

У меня есть таблица, которая содержит: продукт, стоимость, комментарий.

Id     product               cost     comment
1      Tires Rex              10      Fast movement good quality
2      Bone Maxx Centri       110     Clean and soft movement
3      Engine damaged         20      Damaged

Результат, который я хочу: пользователь может искать несколько слов, и запрос должен найти элементы с этими словами без учета регистра.

Например, пользователь ищет: Купить чистые шины для авто

Вывод запроса должен показывать продукты с Я бы 1 и 2.

Зачем?

  • Потому что слово чистый соответствует комментарий в продукте с Я бы 2
  • Потому что слово шины соответствует товар с Я бы 1

Я пробовал с:

SELECT * FROM `inventory` WHERE MATCH (product) AGAINST ('Buy* clean* tires* for* cars*' IN BOOLEAN MODE);

Но это работает только для 1 столбца и учитывает регистр.

Я хочу, чтобы поиск в столбцах с несколькими множителями не учитывал регистр.

Любая помощь будет оценена!

0

Решение

Используйте следующий запрос, он проверен и возвращает первые 2 строки:

SELECT * FROM `inventory` WHERE MATCH (product, comment) AGAINST ('Buy* clean* tires* for* cars*' IN BOOLEAN MODE);
0

Другие решения

Я только что обновил свою систему, используя yum update, и теперь работает нормально.
Может быть, это была проблема.

Проблема сейчас в том, что она чувствительна к регистру. Если я ищу «Чистый», он работает, но если я ищу «Чистый», это не так.

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector