首页 > 解决方案 > 带有 = 的 Sql where 语句有效,但 LIKE 无效

问题描述

带有 = 的 Sql where 语句有效,但 LIKE 无效 是否有解决此问题的方法?

这是确切的代码:

create table zSyn (xField nvarchar(255));
insert into zSyn(xField)
select 'DEVCON 5 Minute Epoxy amber [1:1]';

--Works and returns 1 row:
select * from zSyn
where xField = 'DEVCON 5 Minute Epoxy amber [1:1]';

--Does NOT return any rows:
select * from zSyn
where xField like '%' + 'DEVCON 5 Minute Epoxy amber [1:1]' + '%'

标签: sqlsql-server

解决方案


你需要逃脱[]

select * from zSyn
where xField like ('%' + 'DEVCON 5 Minute Epoxy amber ![1:1!]' + '%') ESCAPE '!';

db<>小提琴演示


推荐阅读