2009-03-31 2 views
9

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

Благодаря

+0

Могу ли я предложить изменить вопрос на «Побег в процентах или знак подчеркивания в DB2 SQL», так как это также работает для подчеркивания? Это поможет людям найти этот вопрос/ответ. –

ответ

12

@% Использования с лазейкой символов:

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

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

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

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

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

+1

Вы можете выбрать любой символ эвакуации, пока вы его удваиваете в любое время, когда вы используете его буквально в строке LIKE. LIKE '...' ESCAPE '...' стандартен в ANSI SQL92. – bobince

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