我需要匹配以单引号引起来的字符串。这是我的查询的样子:
select Distinct(a.item)
from [dbo].[Subscribtions] a
where a.Item like 'Catch Fry''s Low Impact''
但是它抛出了错误
字符串“ Catch Fry's Low Impact”后的右引号。
我不能使用like pattern matching%
,有多个这样的字符串。由于某些数据原因,我只需要使用=
。
谢谢
答案 0 :(得分:2)
查看您的查询
select Distinct(a.item)
from [dbo].[Subscribtions] a
where a.Item like 'Catch Fry''s Low Impact''
在'
的最后还有一个额外的'Catch Fry''s Low Impact''
,而且在Distinct(a.item)
中也不需要括号。
由于您从字面上寻找'Catch Fry''s Low Impact'
,因此
select Distinct a.item
from [dbo].[Subscribtions] a
where a.Item like 'Catch Fry''s Low Impact';
将与
相同select Distinct a.item
from [dbo].[Subscribtions] a
where a.Item = 'Catch Fry''s Low Impact';
所以,我认为您只是在寻找
select Distinct a.item
from [dbo].[Subscribtions] a
where a.Item = 'Catch Fry''s Low Impact';
除非使用通配符匹配,否则使用 LIKE
操作符没有任何好处。