Знак процента побега DB2 SQL - PullRequest
9 голосов
/ 31 марта 2009

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

Спасибо

1 Ответ

15 голосов
/ 31 марта 2009

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

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

Будет выполнен поиск всех записей, содержащих символ "%" в столбце fld.

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...