Знак процента побега DB2 SQL
Я пытаюсь выбрать данные, содержащие четыре знака процента подряд. Как я могу избежать знаков процента, чтобы мое условие LIKE сработало?
Спасибо
1 ответ
Решение
Использование @%
с предложением escape-символа:
select *
from tbl
where fld like '%@%%' escape '@'
Это будет искать все записи, которые содержат "%"
персонаж в fld
колонка.
DB2 / z имеет немного другой формат:
select *
from tbl
where fld like {escape '@'} '%@%%'
Очевидно, что вам нужно будет тщательно выбирать свой escape-символ, чтобы он не мешал остальной части вашей строки, но для статических строк это относительно просто. Динамически построенные строки потребуют динамически создаваемых запросов, чтобы не использовать символ из строки.