На этот вопрос также есть ответ , но в нем конкретно упоминается DB2.
Как искать строку , используя LIKE
уже имеет процент %
символ в нем? В LIKE
оператор использует %
символы для обозначения маски.
На этот вопрос также есть ответ , но в нем конкретно упоминается DB2.
Как искать строку , используя LIKE
уже имеет процент %
символ в нем? В LIKE
оператор использует %
символы для обозначения маски.
Ответы:
Используйте скобки. Так что искать на 75%
WHERE MyCol LIKE '%75[%]%'
Это проще, чем ESCAPE и является общим для большинства СУБД.
[_]
. Как вы избежите открытой квадратной скобки тогда? Как это: [[]
. sqlserver2000.databases.aspfaq.com/…
Вы можете использовать ESCAPE
ключевое слово с LIKE
. Просто добавьте нужный символ (например, «!») К каждому из существующих %
знаков в строке и затем добавьте ESCAPE '!'
(или ваш символ по выбору) в конец запроса.
Например:
SELECT *
FROM prices
WHERE discount LIKE '%80!% off%'
ESCAPE '!'
Это заставит базу данных обрабатывать 80% как фактическую часть строки для поиска, а не 80 (подстановочный знак).
WHERE column_name LIKE '%save 50[%] off!%'