检查字符串是否不包含其他字符串
WHERE NOT (someColumn LIKE '%Apples%')
为什么我没有想到这一点,我正在寻找更先进的东西:) – Dofs 2009-08-07 19:06:09
使用单引号代替双:'%Apples%'。我试图编辑帖子,但SO需要修改为六个或更多字符。 – DeveloperDan 2011-08-17 13:33:16
@DeveloperDan - 谢谢。固定。 – 2011-08-17 13:41:01
或者,你可以这样做:
WHERE CHARINDEX(N'Apples', someColumn) = 0
不知道哪一个效果更好 - 你总得测试一下吧! :-)
马克
UPDATE:性能似乎是相当多的与其它解决方案相媲美(WHERE someColumn NOT LIKE“%苹果%”) - 因此它实际上只是一个个人喜好的问题。你被假定
对我而言,性能不是一个大问题。 – Dofs 2009-08-07 20:19:36
+1:如果要匹配的文本是动态的而不是静态的字符串,比如'Apples',那么这种方法比较好,因为你不需要担心诸如'%','_'这样的通配符,它会由LIKE运算符匹配。 – Joe 2013-05-20 09:23:32
@Joe如果你想对此迂腐,那么这个也不适用于所有情况。 CHARINDEX不区分大小写。所以如果你在苹果领域寻找苹果,你会得到很多。我知道它已经过了几年,但仍然如此。两个答案都是有效的,具体取决于主题,没有人回答涵盖所有的基础。从你接受的答案-1只是似乎有点......是不是正确的词? – DDuffy 2016-12-19 13:33:13
使用此为您的WHERE条件
WHERE CHARINDEX('Apples', column) = 0
请对问题标题更准确。 '“包含另一个字符串”!=“不包含另一个字符串” – lordcheeto 2012-10-23 19:35:31
-1“,表示标题不准确。 – 2012-11-27 15:39:04
我改了标题。迟到比晚起更好:) – Dofs 2012-12-08 09:47:58