表 aaa 有如下列
id name
1 admin,qp,zx
2 admin,hl
3 qp,zx然后我有一个string str=admin 做为查询条件,想查询出name列里面包含了admin的行select * from aaa where.. ..
查询结果显示:
1 admin,qp,zx
2 admin,hl 我用CHARINDEX('"+str+"',name) > 0 这个好象不行,遇到:
name
adminsdadsa,qq,tt 就出问题了,哪位兄弟帮忙解决,谢了
id name
1 admin,qp,zx
2 admin,hl
3 qp,zx然后我有一个string str=admin 做为查询条件,想查询出name列里面包含了admin的行select * from aaa where.. ..
查询结果显示:
1 admin,qp,zx
2 admin,hl 我用CHARINDEX('"+str+"',name) > 0 这个好象不行,遇到:
name
adminsdadsa,qq,tt 就出问题了,哪位兄弟帮忙解决,谢了
id int identity(1,1),
name varchar(20)
)insert into aaa
select 'admin,qp,zx'
union select 'admin,hl'
union select 'qp,zx'
union select 'adminstrator, ss'---------------test------------
select * from aaa
where name like 'admin,%' or name like '%,admin'
or name ='admin'----------------
drop table aaa
set @s = 'admin'select * from tb where charindex(',' + @s + ',' , ',' + name + ',') > 0
insert aaa select 1, 'admin,qp,zx'
union all select 2, 'admin,hl'
union all select 3, 'qp,zx'
union all select 4, 'adminsdadsa,qq,tt' declare @str varchar(32)
set @str='admin' select * from aaa
where CHARINDEX(','+@str+',', ','+name+',')>0
/*
id name
----------- --------------------------------
1 admin,qp,zx
2 admin,hl(2 row(s) affected)
*/drop table aaa
-->
CHARINDEX('"+str+"',','+name+',') > 0
CHARINDEX('"+str+"',name) > 0
--〉
CHARINDEX(',"+str+",',','+name+',') > 0