我想查询SQL列的行,看它是否包含多个值中的任何一个。
例如,返回一个表的行,其列A包含以下任何一个词。
。
('cow','farmer','milk')
当你知道这些词是什么时,这很容易,但我想写一个sproc,我可以输入任何字符串数组,如果某一行的A列包含其中任何一个,它将返回该行。
我希望能够进货。
('cow','farmer','milk')
('cow','farmer','steak','yikes')
('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中,最好的方法是使用一个表值参数。