加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

查询SQL字段是否包含多个值中的任何一个

发布时间:2020-12-12 06:54:58 所属栏目:MsSql教程 来源:网络整理
导读:我想查询SQL列的行是否包含多个值中的任何一个. 例如,返回表的列,其中列A包含以下任何单词: ( ‘母牛’,‘农民’,‘牛奶’). 当你知道单词是什么时很容易,但是我想写一个sproc,我可以在任何字符串数组中输入,如果某行的A列包含其中的任何一个,它将返回该行.
我想查询SQL列的行是否包含多个值中的任何一个.

例如,返回表的列,其中列A包含以下任何单词:
( ‘母牛’,‘农民’,‘牛奶’).

当你知道单词是什么时很容易,但是我想写一个sproc,我可以在任何字符串数组中输入,如果某行的A列包含其中的任何一个,它将返回该行.

我希望能够提供:

( ‘母牛’,‘牛奶’)

要么

( ‘母牛’,‘牛排’,‘让人惊讶’)

要么

('cow','farmer','three','pigs','wolf')

它必须相对简单,但我不能为我的生活弄明白.
我在SQL Server 2008上

解决方法

一个简单的方法:
declare @candidates varchar = '|cow|farmer|three|pigs|wolf|'
select * from TableName where @candidates like '%|' + FieldName + '|%'

在SQL 2008中执行此操作的最佳方法是使用table-valued parameter.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读