Вы можете использовать символы соответствия шаблонов в качестве буквенных символов. Чтобы использовать подстановочный знак как буквенный символ, приложите символ подстановки в скобках. В таблице показаны несколько примеров использования ключевого слова LIKE и подстановочных символов [].
В вашем случае:
... LIKE '%[_]d'
Ответ 2
Очевидно, что решение @Lasse верное, но есть другой способ решить вашу проблему: оператор T-SQL LIKE определяет необязательный ESCAPE, который позволяет объявить символ, который выйдет из следующего символа в шаблон.
В вашем случае следующие предложения WHERE эквивалентны:
WHERE username LIKE '%[_]d'; -- @Lasse solution
WHERE username LIKE '%$_d' ESCAPE '$';
WHERE username LIKE '%^_d' ESCAPE '^';
Ответ 3
Эти решения полностью имеют смысл. К сожалению, ни один из них не работал для меня, как ожидалось Вместо того, чтобы пытаться с этим справиться, я обошел вокруг:
select * from information_schema.columns
where replace(table_name,'_','!') not like '%!%'
order by table_name
Ответ 4
Это сработало для меня, просто используйте escape '%\_%'
Ответ 5
Ни один из них не работал для меня в SSIS v18.0, поэтому я хотел бы сделать что-то вроде этого:
WHERE CHARINDEX('_', thingyoursearching) < 1
... где я пытаюсь игнорировать строки с подчеркиванием в них. Если вы хотите найти вещи, которые имеют подчеркивание, просто переверните их: