首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何判断VARCHAR变量是否包含子字符串?

如何判断VARCHAR变量是否包含子字符串?
EN

Stack Overflow用户
提问于 2012-09-04 22:16:14
回答 4查看 172.6K关注 0票数 67

我以为是CONTAINS,但这对我不起作用。

我希望做到这一点:

代码语言:javascript
复制
IF CONTAINS(@stringVar, 'thisstring')
   ...

我必须运行一个或另一个select,这取决于该变量是否包含字符串,但我不知道如何让它工作。我看到的所有示例都在容器中使用列。

提前谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-09-04 22:17:17

标准的SQL方式是使用like:

代码语言:javascript
复制
where @stringVar like '%thisstring%'

这是在查询语句中。您也可以在TSQL中执行此操作:

代码语言:javascript
复制
if @stringVar like '%thisstring%'
票数 90
EN

Stack Overflow用户

发布于 2012-09-04 22:29:52

您也可以选择使用CHARINDEX,而不是LIKE (它确实像其他评论者建议的那样工作

代码语言:javascript
复制
declare @full varchar(100) = 'abcdefg'
declare @find varchar(100) = 'cde'
if (charindex(@find, @full) > 0)
    print 'exists'
票数 29
EN

Stack Overflow用户

发布于 2012-09-04 22:18:58

CONTAINS用于全文索引字段-如果不是,则使用LIKE

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12265411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档