mysql 的 find_in_set函数使用方法-阿里云开发者社区

开发者社区> 技术小美> 正文

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 之间。 
一个字符串列表就是一个由一些被‘,’符号分开的子链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则   FIND_IN_SET() 函数被优化,使用比特计算。 
如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为 NULL。这个函数在第一个参数包含一个逗号(‘,’)时将无法正常运行。 

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

-> 2 因为b 在strlist集合中放在2的位置 从1开始 
-------------------------------------------------------- 
select FIND_IN_SET('1','1'); 返回 就是1 这时候的strlist集合有点特殊 只有一个字符串 其实就是要求前一个字符串 一定要在后一个字符串集合中 才返回 大于0的数 

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

注意: 
select * from treenodes where FIND_IN_SET(id,'1,2,3,4,5'); 
使用find_in_set函数一次返回多条记录 

id 是一个表的字段 然后每条记录分别是id等于1,2,3,4,5的时候 
有点类似in (集合) 

select * from treenodes where id in (1,2,3,4,5);



本文转自 netcorner 博客园博客,原文链接:http://www.cnblogs.com/netcorner/p/4218374.html   ,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
使用sdk验签方法详解
说明:正常接口使用 AlipaySignature.rsaCheckV1,sign_type不参与签名     特殊说明:AlipaySignature.rsaCheckV2方法生活号异步通知需要使用,会保留sign_type参数参与验签。
730 0
Loadrunner中web_find和web_reg_find函数的使用与区别
总结一下Loadrunner中的检查点函数,主要介绍两个函数:web_find()和web_reg_find();这两个函数均用于内容的查找,但两者也有本质的区别,具体介绍如下:一、web_find()函数该函数的作用是“从HTML页面中查找指定的文本字符串”常用参数及含义如下: 1 web_...
887 0
mysql常用语法
查看数据库连接 select * from information_schema.PROCESSLIST; 查询当前库中表是否存在 select count(*) from information_schema.
568 0
SQL中CONVERT转化函数的用法
来自博客园http://www.cnblogs.com/xionglee/articles/1444916.html 格式:CONVERT(data_type,expression[,style])说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到. 注意:时间日期类型转换以后的结果是字符串。
659 0
MySQL查看当前使用的配置文件my.cnf的方法
MySQL查看当前使用的配置文件my.cnf的方法 MySQL实例在启动时,会先读取配置参数文件my.cnf。my.cnf一般会放在MySQL的安装目录中,用户也可以放在其他目录加载。
5303 0
+关注
6906
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《Nacos架构&原理》
立即下载
《看见新力量:二》电子书
立即下载
云上自动化运维(CloudOps)白皮书
立即下载