2015-06-18 2 views
0

У меня проблема с моим SQL-запросом, и я прошу помощи.SQL-запрос: LIKE x%

У меня есть строки, как:

2% 

20% 

a 20% b 

a 2 b 

a 2% b 

etc. 

Я хочу видеть только те, которые содержат «2%» внутри строки.

Когда я хотел, чтобы фильтровать их с помощью:

WHERE ColA LIKE '%2%%' 

он показал все выше строк, а не только:

2% 

a 2% b 

Не могли бы вы помочь мне с этим?

+2

Какую базу вы используете? Пожалуйста, отметьте свой вопрос соответствующим образом. –

ответ

6

Попробуйте

WHERE ColA LIKE '%2[%]%' 
+3

Это очень специфичная база данных. Он работает только в SQL Server, и OP не указал базу данных. –

+0

Дорогой Гордон. Да, это помогло. Спасибо. –

3

% соответствует любой строке в SQL, вы должны избежать%. Вы можете сделать это, указав escape-символ в той же команде:

WHERE ColA LIKE '%2/%%' ESCAPE '/'; 
+1

Это стандарт ANSI и должен работать в большинстве баз данных. –

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