语法
FIND_IN_SET(str,strlist)
定义
如果字符串str在由多个子链组成的字符串列表strlist中,则返回值的范畴在1到N之间。
一个字符串列表就是一个由一些被‘,’符号离开的自链组成的字符串。
如果第一个参数是一个常数字符串,而第二个是typeSET列,则FIND_IN_SET()函数被优化,应用比特计算。
如果str不在strlist或strlist为空字符串,则返回值为0。
如任意一个参数为NULL,则返回值为NULL。这个函数在第一个参数蕴含一个逗号(‘,’)时将无奈失常运行。
strlist:一个由英文逗号“,”链接的字符串,例如:”a,b,c,d”,该字符串模式上相似于SET类型的值被逗号给链接起来。
示例:SELECT FIND_IN_SET(‘b’,’a,b,c,d’); //返回值为2,即第2个值
例子
有个文章表外面有个type字段,它存储的是文章类型,有 1头条、2举荐、3热点、4图文等等 。
当初有篇文章他既是头条,又是热点,还是图文,type中以 1,3,4 的格局存储。那咱们如何用sql查找所有type中有4的图文类型的文章呢?
这就能够应用 find_in_set 了。以下为援用的内容:
select * from article where FIND_IN_SET(‘4’,type)