mysql中find_in_set函数的应用

有个文章里面有个type字段,他存储的是文章类型,有1头条,2推荐,3热点,4图文,...,11,12,13等等。

现在有篇文章,他既是头条,又是热点和图文,

type是以1,3,4存储,

我们如何从sql中查找type中有4的文章那?

这时候我们用find_in_set,

select * from article where FIND_IN_SET('4',type);

----------------------------------------------------------------------------------

mysql手册中find_in_set函数的语法:

FIND_IN_SET(str,strList)

假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。

一个字符串列表就是一个由一些被“,”分开的子链组成的字符串。如果str不在N子链的字符串中,则返回0;如果任何一个参数为null,则返回null;

mysql> SELECT FIND_IN_SET('b','a,b,c,d');

-> 2 因为b 在strlist集合中放在2的位置 从1开始

select FIND_IN_SET('2','1,2');返回2
select FIND_IN_SET('6','1'); 返回0 



你可能感兴趣的:(mysql中find_in_set函数的应用)