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 MVC模式在网站架构中的实现分析
Mar 04 PHP
ionCube 一款类似zend的PHP加密/解密工具
Jul 25 PHP
提高define性能的php扩展hidef的安装和使用
Jun 14 PHP
php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
Nov 02 PHP
php实现利用phpexcel导出数据
Aug 24 PHP
PHP开发框架Laravel数据库操作方法总结
Sep 03 PHP
PHP将字符分解为多个字符串的方法
Nov 22 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
Feb 16 PHP
php防止CC攻击代码 php防止网页频繁刷新
Dec 21 PHP
解析WordPress中函数钩子hook的作用及基本用法
Dec 22 PHP
php面向对象重点知识分享
Sep 27 PHP
如何重写Laravel异常处理类详解
Dec 20 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
用libTemplate实现静态网页的生成
2006/10/09 PHP
PHP下打开URL地址的几种方法小结
2010/05/16 PHP
关于Sphinx创建全文检索的索引介绍
2013/06/25 PHP
PHP批量查询WordPress留言者E-mail地址实现方法
2015/02/15 PHP
详解PHP中的mb_detect_encoding函数使用方法
2015/08/18 PHP
PHP+redis实现添加处理投票的方法
2015/11/14 PHP
ThinkPHP框架下微信支付功能总结踩坑笔记
2019/04/10 PHP
laravel ORM关联关系中的 with和whereHas用法
2019/10/16 PHP
5款Javascript颜色选择器
2009/10/25 Javascript
javascript instanceof,typeof的区别
2010/03/24 Javascript
js分解url参数(面向对象-极简主义法应用)
2012/08/09 Javascript
Javascript实现关联数据(Linked Data)查询及注意细节
2013/02/22 Javascript
原生js和jquery中有关透明度设置的相关问题
2014/01/08 Javascript
js检测离开或刷新页面时表单数据是否更改的方法
2016/08/02 Javascript
js阻止冒泡和默认事件(默认行为)详解
2016/10/20 Javascript
react配合antd组件实现的管理系统示例代码
2018/04/24 Javascript
vuex进阶知识点巩固
2018/05/20 Javascript
Vue中用props给data赋初始值遇到的问题解决
2018/11/27 Javascript
vue 返回上一页,页面样式错乱的解决
2019/11/14 Javascript
在HTML中使用JavaScript的两种方法
2020/12/24 Javascript
[01:09]DOTA2次级职业联赛 - 99战队宣传片
2014/12/01 DOTA
Python中__name__的使用实例
2015/04/14 Python
Python实现嵌套列表去重方法示例
2017/12/28 Python
python如何为被装饰的函数保留元数据
2018/03/21 Python
python读取指定字节长度的文本方法
2019/08/27 Python
Pycharm 2019 破解激活方法图文详解
2019/10/11 Python
django实现HttpResponse返回json数据为中文
2020/03/27 Python
美国杰西潘尼官网:JCPenney
2019/06/12 全球购物
用C语言实现文件读写操作
2013/10/27 面试题
留学推荐信写作指南
2014/01/25 职场文书
捐助倡议书范文
2014/04/15 职场文书
试用期自我评价范文
2015/03/10 职场文书
大学生敬老院活动总结
2015/05/07 职场文书
多人股份制合作协议书
2016/03/19 职场文书
为什么代码规范要求SQL语句不要过多的join
2021/06/23 MySQL
MySQL慢查询优化解决问题
2022/03/17 MySQL