小编典典

sql从csv字符串中搜索

sql

我在做一个搜索页面,我必须用一个文本框搜索多个字段。因此我将在存储过程中将搜索文本作为CSV字符串获取

我的桌子如下

ID  Name          age   
5   bob           23    
6   bod.harry     34    
7   charles       44

我需要这样的SQL查询

declare @searchtext='bob,harry,charley'
select * from employee where  name like (@searchtext)

该查询应返回这两个记录(ID 5和6)


阅读 137

收藏
2021-04-28

共1个答案

小编典典

您可以在存储过程中使用这种方式,

declare @searchtext varchar(1000)

set searchtext ='bob,harry,charley'

declare @filter varchar(2000)

set @filter = '(name LIKE ''%' + replace('bob,harry,charley',',','%'' OR name LIKE ''%') + '%'')'

exec
('
    select *
    from mytab
    where ' + @filter + '
'
)
2021-04-28