欢迎光临
一起探讨学习进步

mysql函数find_in_set的用法

find_in_set这个是mysql的一个函数,见得比较少,今天笔者就说说它的用法。

find_in_set函数返回指定字符串在以逗号分隔的字符串列 表中的位置。

find_in_set函数接收两个参数:

第一个参数needle是要查找的字符串。

第二个参数haystack是要搜索的逗号分隔的字符串列表。

比如一条新闻 ,属于三个分类,分别是:国际新闻(type:1),最新新闻(type:2),世界新闻(type:12)

就说这个意思哈,实际设计应该不会这么玩,重在理解~

那么,type字段保存的应该为 :1,2,12

如果想要查找新闻表中(news)中属于最新新闻的所有记录,就写为:

select * from news where find_in_set(2, type);

值得注意的是,和like不同,find_in_set是精确匹配,我 们要查找的是type为2的,不会把type为12的查出来,所以和like比,它的执行效率要高的多,如果有类似的需求,强烈推荐用find_in_set代替like使用。

未经允许不得转载:mysql函数find_in_set的用法

评论 0

评论前必须登录!