Yii2增删改查之查询 where参数详细介绍


Posted in PHP onAugust 08, 2016

概述

由于官方手册关于where的介绍比较少,所以想自己整理一下,以便大家的学习和自己回头查询。本篇文章会详细介绍and、or、between、in、like在where方法中的使用方法和举例。

and

// 我们要查询id大于1并且小于3的数据
$userInfo = User::find()->where(['and' , 'id > 1' , 'id < 3'])->all();
// 或者用以下方式,更为安全
$userInfo = User::find()->where(['and' , ['>' , 'id' , 1] , ['<' , 'id' , 3]])->all();
// 往往我们会处理比这更复杂的sql
// 假如我们要查询name是王五 并且 id大于1或者id小于3的数据
$userInfo = User::find()->where(
['and' , 
['=' , 'name' , '王五'] , 
['or' , 
['=' , 'id' , 1] , 
['=' , 'id' , 3]
]
])->asArray()->all();
// 注:asArray()方法会将数据以数组的方式显示

or

// 我们要查询id等于1或者id等于3的数据
$userInfo = User::find()->where(['or' , 'id = 1' , 'id = 3'])->all();
// 我们同样可以使用以下方式
$userInfo = User::find()->where(['or' , ['=' , 'id' , 1] , ['=' , 'id' , 3]])->all();
// 假如我们要查询id在4,8,9范围内 或者 id在1,2,3范围内呢?
$userInfo = User::find()->where(['or' , ['id' => [4,8,9]] , ['id' => [1,2,3]]])->all();

between

// 我们要查询id在1到10的范围之内
$userInfo = User::find()->where(['between' , 'id' , 1 , 10])->all();

in

// 我们要查询id在1、2、3的范围内
$userInfo = User::find()->where(['in' , 'id' , [1,2,3]])->all();

like

// 我们要查询name中包含“张”这个字符的数据
$userInfo = User::find()->where(['like' , 'name' , '张'])->all();
// 我们假如要通配name中包含“张”这个字符,而且还得包含“三”这个字符
$userInfo = User::find()->where(['like' , 'name' , ['张' , '三']])->all();
// 我们假如只需要通配左边即可
$userInfo = User::find()->where(['like' , 'name' , '%三' , false])->all();
// 所以,右边也是同样

以上所述是小编给大家介绍的Yii2增删改查之查询 where参数详细介绍的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
js下函数般调用正则的方法附代码
Jun 22 PHP
火车采集器 免费版使出收费版本功能实现原理
Sep 17 PHP
php类中private属性继承问题分析
Nov 01 PHP
PHP在线生成二维码代码(google api)
Jun 03 PHP
php set_time_limit()函数的使用详解
Jun 05 PHP
Yii使用CLinkPager分页实例详解
Jul 23 PHP
php获取flash尺寸详细数据的方法
Nov 12 PHP
php5.x禁用eval的操作方法
Oct 19 PHP
php基于Redis消息队列实现的消息推送的方法
Nov 28 PHP
PHP数据源架构模式之表入口模式实例分析
Jan 23 PHP
php测试kafka项目示例
Feb 06 PHP
PHP实现抽奖功能实例代码
Jun 30 PHP
微信公众号开发之文本消息自动回复php代码
Aug 08 #PHP
微信公众号开发之语音消息识别php代码
Aug 08 #PHP
PHP+JQuery+Ajax实现分页方法详解
Aug 06 #PHP
微信自定义菜单的创建/查询/取消php示例代码
Aug 05 #PHP
Thinkphp微信公众号支付接口
Aug 04 #PHP
浅析Laravel5中队列的配置及使用
Aug 04 #PHP
PHP中如何判断exec函数执行成功?
Aug 04 #PHP
You might like
php Smarty date_format [格式化时间日期]
2010/03/15 PHP
php函数array_merge用法一例(合并同类数组)
2013/02/03 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(六)
2014/06/23 PHP
PHP简单遍历对象示例
2016/09/28 PHP
在线编辑器中换行与内容自动提取
2009/04/24 Javascript
js substr支持中文截取函数代码(中文是双字节)
2013/04/17 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
2013/05/27 Javascript
javascript中SetInterval与setTimeout的定时器用法
2015/08/24 Javascript
浅谈Nodejs观察者模式
2015/10/13 NodeJs
jQuery实现带水平滑杆的焦点图动画插件
2016/03/08 Javascript
浅谈JavaScript的内置对象和浏览器对象
2016/06/03 Javascript
canvas绘制一个常用的emoji表情
2017/03/30 Javascript
laydate日历控件使用方法详解
2017/11/20 Javascript
小程序云开发初探(小结)
2018/10/24 Javascript
jQuery zTree树插件的使用教程
2019/08/16 jQuery
JavaScript实现移动端带transition动画的轮播效果
2020/03/24 Javascript
原生js实现html手机端城市列表索引选择城市
2020/06/24 Javascript
[01:19:23]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第二场
2018/04/06 DOTA
Python中的yield浅析
2014/06/16 Python
Django框架中数据的连锁查询和限制返回数据的方法
2015/07/17 Python
在python中使用requests 模拟浏览器发送请求数据的方法
2018/12/26 Python
python opencv判断图像是否为空的实例
2019/01/26 Python
python itchat实现调用微信接口的第三方模块方法
2019/06/11 Python
使用 Python 读取电子表格中的数据实例详解
2020/04/17 Python
python 实现图像快速替换某种颜色
2020/06/04 Python
Python实现一个优先级队列的方法
2020/07/31 Python
利用纯CSS3实现tab选项卡切换示例代码
2016/09/21 HTML / CSS
浅谈移动端网页图片预加载方案
2018/11/05 HTML / CSS
国旗下讲话演讲稿
2014/05/08 职场文书
2014最新离职证明范本
2014/09/12 职场文书
2015年教师节活动总结
2015/03/20 职场文书
写给女朋友的保证书
2015/05/09 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
致男子1500米运动员的广播稿
2019/11/08 职场文书
给原生html中添加水印遮罩层的实现示例
2021/04/02 Javascript
Go语言并发编程 sync.Once
2021/10/16 Golang