2012-02-08 2 views
1

Я пытаюсь найти значение в строке db, включая знак процента.MySQL соответствует строке, содержащей процент char

Например, существует значение строки, «уменьшенной на 10%».

Мне нужно отфильтровать результаты, имеющие в них «10%», а не только «10».

Я пытался

SELECT name, MATCH(name) AGAINST('10\%') AS score 
FROM mytable 
ORDER BY score DESC 

Но возвратили все результаты с "10".

Любые идеи?

+0

Попробуйте 'ВЫБЕРИТЕ имя ОТ туЬаЫе где имя LIKE '% \ %%' ORDER BY бальной DESC'? – Hecksa

+0

К сожалению, мне нужно использовать MATCH AGAINST – Tim

ответ

1

Попробуйте следующее:

SELECT name, MATCH(name) AGAINST('+10\%' IN BOOLEAN MODE) AS score 
FROM mytable 
ORDER BY score DESC 
+0

Не помогло, то же результаты – Tim

+0

Каков результат и каково ваше ожидание? –

+0

Извините, если я не был достаточно ясен, я ожидаю фильтрацию результатов, имеющих в них «10%», а не «10». С вашим и моим кодом я отфильтровал все результаты с помощью "10" – Tim

Смежные вопросы