@jorshjorsh95

SQL LIKE поиск несколько значений?

Добрый день, есть таблица:
id | name
Поле name может содержать строку (14 муфта бмп-200)

Как совершить поиск по:
нескольким значениям: '14', '200' (например если человек ввел в строке поиска муфта 200)

примерно так:
Select ... publish = 1 and (name LIKE '%муфта%' OR name LIKE '%200%')
- но этот вариант не работает, всегда пустая строка

Знаю про sphinx, но нет возможности его использовать, подскажите пожалуйста, как решить проблему?
  • Вопрос задан
  • 26390 просмотров
Решения вопроса 1
Konstantin18ko
@Konstantin18ko
Стоматолог
https://m.habrahabr.ru/post/40218/

Это называется полнотекстовый поисковик.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
mashletov
@mashletov
Math.random()
Ваш select должен работать.
Ответ написан
Комментировать
ThunderCat
@ThunderCat Куратор тега MySQL
{PHP, MySql, HTML, JS, CSS} developer
1) Код запроса куском, так что в нем может быть другие условия ограничивающие выборку, и соответственно строка будет пустой
2) Убедитесь что такая строка у вас есть в базе, для начала сделайте запрос проще, уберите все условия кроме like и выполните запрос из пхпмайадмин или другого средства администрирования(консоль, воркбенч...). Для полной уверенности в like можно вставить 1-2 буквы точно попадающие в поле, а не длинную фразу/слово.
3) Дополнение к 2. Возможно ошибка не на уровне SQL, а в прикладном коде, например неверно указана кодировка подключения к БД.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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