我认为这是CONTAINS
,但是这不是为我工作。
我要做到这一点:
IF CONTAINS(@stringVar, 'thisstring')
...
我要运行一个select
或另一个,这取决于变量是否包含一个字符串,我无法弄清楚如何得到它的工作。 所有的例子我看到正在使用的列在含有。
提前致谢。
我认为这是CONTAINS
,但是这不是为我工作。
我要做到这一点:
IF CONTAINS(@stringVar, 'thisstring')
...
我要运行一个select
或另一个,这取决于变量是否包含一个字符串,我无法弄清楚如何得到它的工作。 所有的例子我看到正在使用的列在含有。
提前致谢。
标准SQL的方法是使用这样的:
where @stringVar like '%thisstring%'
这是一个查询语句。 你也可以这样做在TSQL:
if @stringVar like '%thisstring%'
而不是LIKE
(其中不工作的其他评论者建议),您也可以使用CHARINDEX
:
declare @full varchar(100) = 'abcdefg'
declare @find varchar(100) = 'cde'
if (charindex(@find, @full) > 0)
print 'exists'
CONTAINS
是一个全文索引字段-如果没有,则使用LIKE
IF CHARINDEX('TextToSearch',@TextWhereISearch, 0) > 0 => TEXT EXISTS
IF PATINDEX('TextToSearch', @TextWhereISearch) > 0 => TEXT EXISTS
Additionally we can also use LIKE but I usually don't use LIKE.