Знак процента побега DB2 SQL

Я пытаюсь выбрать данные, содержащие четыре знака процента подряд. Как я могу избежать знаков процента, чтобы мое условие LIKE сработало?

Спасибо

1 ответ

Решение

Использование @% с предложением escape-символа:

select *
from tbl
where fld like '%@%%' escape '@'

Это будет искать все записи, которые содержат "%" персонаж в fld колонка.

DB2 / z имеет немного другой формат:

select *
from tbl
where fld like {escape '@'} '%@%%'

Очевидно, что вам нужно будет тщательно выбирать свой escape-символ, чтобы он не мешал остальной части вашей строки, но для статических строк это относительно просто. Динамически построенные строки потребуют динамически создаваемых запросов, чтобы не использовать символ из строки.

Другие вопросы по тегам