Поиск в процентном совпадении - MySQL
Формулировка задачи:
В БД есть данные:
если делаю запрос:
получаю
Должно быть:
Если я делаю запрос:
Должно быть:
Помогите составить правильный запрос.
1;Масло моторное синтетическое
2;Масло трансмиссионное минеральное
3;Масло 5w-40
4;Масло синтетическое моторное
SELECT * FROM tabl1 WHERE NAME LIKE '%Масло моторное%'
1;Масло моторное синтетическое
1;Масло моторное синтетическое
4;Масло синтетическое моторное
2;Масло трансмиссионное минеральное
3;Масло 5w-40
SELECT * FROM tabl1 WHERE NAME LIKE '%Масло минеральное 5w-40%'
3;Масло 5w-40
2;Масло трансмиссионное минеральное
4;Масло синтетическое моторное
1;Масло моторное синтетическое
Решение задачи: «Поиск в процентном совпадении»
textual
Листинг программы
SELECT * FROM `tabl1`WHERE name LIKE '%масло%' AND (name LIKE '%моторное%' OR name LIKE '%синтетическое%' OR name LIKE '%FORD%')
Объяснение кода листинга программы
- SELECT * FROM
tabl1— выбираем все данные из таблицыtabl1 - WHERE name LIKE '%масло%' — фильтруем данные по полю
name, чтобы остались только те, у которых значение содержит слово 'масло' - AND (name LIKE '%моторное%' OR name LIKE '%синтетическое%' OR name LIKE '%FORD%') — добавляем еще три условия для фильтрации данных по полю
name:- значение поля
nameдолжно содержать слово 'моторное' - значение поля
nameдолжно содержать слово 'синтетическое' - значение поля
nameдолжно содержать слово 'FORD'
- значение поля