Thinkphp查询mysql数据库多个字段是否包含某个词的sql语句
我们在查询系统的时候有时候需要在多个字段找同一个关键词,例如我们要在文章系统中查找标题和内容含有“奥利给”关键词的文章
1、php原生查询
标题和内容只要有一个地方含有奥利给就符合
select * from articel where title like '%str%' or content like '%奥利给%'
或者标题和内容全部含有奥利给才符合
select * from articel where title like '%str%' and content like '%奥利给%'
%是通配符,代表0-n个任意字符
如果你要找到开头是 xxx的字符串,应该写 like 'xxx%'
结尾是xxx的字符串 like '%xxx'
含有xxx的字符串 like '%xxx%'
注意,如果字段有索引,只有like 'xxx%'能正确使用到索引
2、Thinkphp数据库操作
thinkphp已经给我们提供了极大方便
快捷查询
快捷查询方式是一种多字段相同查询条件的简化写法,可以进一步简化查询条件的写法,在多个字段之间用|分割表示OR查询,用&分割表示AND查询,可以实现下面的查询,例如:
Db::table('article')
->where('title|content','like','%奥利给%')
->select();
Db::table('article')
->where('title&content','like','%奥利给%')
->select();
|代表 or,&代表and
是不是很简答?
随机推荐
- 火车头V9开心版提示Exception Processing Message 0xc0000005 Parameters解决方法
- 28岁女网红,直播时心梗猝死,医生:这种食物天天吃,血管易堵死
- 多吃葡萄对眼睛有益!
- 彻底屏蔽清除各种2345浏览器、好压等软件广告方法
- Visual Studio Code User 与 Visual Studio Code System的区别及如何选择
- PHP正则式eregi 语句改成preg_match语句转为preg_match函数的简单方法
- PHP 正则表达式大全
- 一饿就出现无力、手抖、心慌,这是怎么回事?
- JS判断google广告被屏蔽弹出对话框
- 解决phpMyadmin出现Cannot start session without errors
- 男人嘴上说再多“肉麻话”,没有行动,还是算了吧
- 解决win7不支持安装nodejs最新版本的问题
- 解决phpstudy中的phpmyadmin“缺少 mysqli 扩展 请检查 PHP 配置错误”问题
- Thinkphp单应用中用中间件处理权限
- 解读《易经》难
- Thinkphp查询mysql数据库多个字段是否包含某个词的sql语句
- 喝茶、牛奶都有益健康,鲜奶茶的营养能好上加好吗?
- Mysql数据库中utf8_bin、utf8_unicode_ci、utf8_general_ci的区别和选择技巧及sql语句强行更改总结
- 系统的学习Data & Analytics
- 推荐本书《人类简史》
- 有感大公司加薪升职之难
- phpMyadmin出现缺少 mcrypt 扩展,请检查 PHP 配置是怎么回事
- chrome离线安装包下载方法
- 四个步骤提高你的情绪韧性挺过难关
- 判断网页广告是否被浏览器拦截过滤的JS代码
- 新发现在新窗口打开链接属性target="_blank"和target="new"竟然是不同的
- 人生路上要善待自己,不凑合,不讨好,不解释
- 祛湿神器红豆薏米芡实粥的正确做法
- 3秒钟快速拆开米袋缝线
- 网站检测用户浏览器是否安装 AdBlock 类的广告拦截插件的 6 种方法