select name from table
我想查name里包含我传入的参数比如a,c
只要name字段里含有a或者含有c的都查出来
select name from table where name like '%a%' or name like '%c%'
这是一种简单但很坑的写法
SELECT * FROM 表名 WHERE NAME LIKE '%a%' OR NAME LIKE '%c%'
可以用 select name from table where name like '%a%' ,百分号在后边就是左匹配,百分号在左边是右匹配
也可以直接这样写
SELECT * FROM 表名 WHERE NAME LIKE '%a%' OR '%c%'
没表达清楚...a和c只是一个例子, 是bcde 是我传入的一个参数
select name from table where name like '%' & a & '%'这里的a可以理解为你定义的一个字符串参数
如果用的是mysql函数的话可以考虑用它自带的函数: FIND_IN_SET(),比如:select name from table FIND_IN_SET('a',name); 或者返回多条记录
select name from table FIND_IN_SET(name,'a,b');
上面的写法写错了,忘记加where了,正确的应该是select name from table where FIND_IN_SET('a',name); 和 select name from table where FIND_IN_SET(name,'a,b');
select name from table where FIND_IN_SET('a',name) or FIND_IN_SET('b',name);
select name from table where name like '%a%' or name like '%c%'
这个为问题重点在会使用%来占位
select name from table where charindex(@a,name)>0 ,@a为传入的变量