MySQL的FIND_IN_SET函数使用方法分享


Posted in PHP onMarch 27, 2012

很多时候我们在设计数据库时有这种情况,比如:

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

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

type中以 1,3,4的格式存储.

那们我们如何用sql查找所有type中有4图文标准的文章呢,

这就要我们的find_in_set出马的时候到了.

先看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

用起来很简单

就以上面我说到的情况来举例:

以下为引用的内容:

select * from article where FIND_IN_SET('4',type)
PHP 相关文章推荐
PHP安全配置
Oct 09 PHP
基于数据库的在线人数,日访问量等统计
Oct 09 PHP
PHP中for循环语句的几种变型
Nov 26 PHP
Windows PHP5和Apache的安装与配置
Jun 08 PHP
PhpMyAdmin中无法导入sql文件的解决办法
Jan 08 PHP
给初学者的30条PHP最佳实践(荒野无灯)
Aug 02 PHP
php天翼开放平台短信发送接口实现方法
Dec 22 PHP
PHP+MySQL插入操作实例
Jan 21 PHP
php+mysqli使用面向对象方式更新数据库实例
Jan 29 PHP
PHP获取不了React Native Fecth参数的解决办法
Aug 26 PHP
php str_getcsv把字符串解析为数组的实现方法
Apr 05 PHP
在Laravel 的 Blade 模版中实现定义变量
Oct 14 PHP
php提示无法加载或mcrypt没有找到 PHP 扩展 mbstring解决办法
Mar 27 #PHP
phpMyAdmin 链接表的附加功能尚未激活问题的解决方法(已测)
Mar 27 #PHP
phpMyAdmin出现无法载入 mcrypt 扩展,请检查PHP配置的解决方法
Mar 26 #PHP
simplehtmldom Doc api帮助文档
Mar 26 #PHP
php中一个有意思的日期逻辑处理
Mar 25 #PHP
php中http_build_query 的一个问题
Mar 25 #PHP
php正则表达匹配中文问题分析小结
Mar 25 #PHP
You might like
基于mysql的bbs设计(五)
2006/10/09 PHP
解读PHP中的垃圾回收机制
2015/08/10 PHP
php中时间函数date及常用的时间计算
2017/05/12 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
2019/12/18 PHP
浏览器常用高宽的jquery插件
2011/02/24 Javascript
Jquery ajax传递复杂参数给WebService的实现代码
2011/08/08 Javascript
JavaScript快速检测浏览器对CSS3特性的支持情况
2012/09/26 Javascript
JS实现超过长度限制后自动跳转下一款文本框的方法
2015/02/23 Javascript
JavaScript对HTML DOM使用EventListener进行操作
2015/10/21 Javascript
浅谈JavaScript的内置对象和浏览器对象
2016/06/03 Javascript
json与jsonp知识小结(推荐)
2016/08/16 Javascript
在vue-cli脚手架中配置一个vue-router前端路由
2017/07/03 Javascript
JSON在Javascript中的使用(eval和JSON.parse的区别)详细解析
2017/09/05 Javascript
Vue实战之vue登录验证的实现代码
2017/10/31 Javascript
微信小程序异步处理详解
2017/11/10 Javascript
详解50行代码,Node爬虫练手项目
2019/04/22 Javascript
Angular 2使用路由自定义弹出组件toast操作示例
2019/05/10 Javascript
layui多图上传实现删除功能的例子
2019/09/23 Javascript
vue实现二级导航栏效果
2019/10/19 Javascript
微信小程序自定义扫码功能界面的实现代码
2020/07/02 Javascript
基于Vue.js+Nuxt开发自定义弹出层组件
2020/10/09 Javascript
vue从后台渲染文章列表以及根据id跳转文章详情详解
2020/12/14 Vue.js
Python中的MongoDB基本操作:连接、查询实例
2015/02/13 Python
基于Python对象引用、可变性和垃圾回收详解
2017/08/21 Python
Windows 64位下python3安装nltk模块
2018/09/19 Python
Python HTML解析器BeautifulSoup用法实例详解【爬虫解析器】
2019/04/05 Python
解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题
2020/04/20 Python
Python计算矩阵的和积的实例详解
2020/09/10 Python
全球速卖通法国在线交易平台:AliExpress法国
2017/07/07 全球购物
吨的认识教学反思
2014/04/27 职场文书
单位接收函范文
2015/01/30 职场文书
2015秋季新学期开学寄语
2015/05/28 职场文书
家长必看:义务教育,不得以面试 评测等名义选拔学生
2019/07/09 职场文书
pandas 实现将NaN转换为None
2021/05/14 Python
使用canvas仿Echarts实现金字塔图的实例代码
2021/11/11 HTML / CSS
Ruby处理YAML和json数据
2022/04/18 Ruby