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 相关文章推荐
PHP环境搭建最新方法
Sep 05 PHP
PHP EOT定界符的使用详解
Sep 30 PHP
PHP获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)
Jun 18 PHP
PHP连接MySQL的2种方法小结以及防止乱码
Mar 11 PHP
图文详解phpstorm配置Xdebug进行调试PHP教程
Jun 13 PHP
ucenter中词语过滤原理分析
Jul 13 PHP
php之可变变量的实例详解
Sep 12 PHP
PHP获取二叉树镜像的方法
Jan 17 PHP
PHP实现的XXTEA加密解密算法示例
Aug 28 PHP
php设计模式之抽象工厂模式分析【星际争霸游戏案例】
Jan 23 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 PHP
PHP设计模式入门之状态模式原理与实现方法分析
Apr 26 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下使用SMTP发邮件的代码
2008/01/10 PHP
Discuz批量替换帖子内容的方法(使用SQL更新数据库)
2014/06/23 PHP
支持生僻字且自动识别utf-8编码的php汉字转拼音类
2014/06/27 PHP
php查询ip所在地的方法
2014/12/05 PHP
PHP使用fopen与file_get_contents读取文件实例分享
2016/03/04 PHP
PHP实现文件上传功能实例代码
2017/05/18 PHP
用Laravel Sms实现laravel短信验证码的发送的实现
2018/11/29 PHP
jQuery实现密保互斥问题解决方案
2013/08/16 Javascript
通过length属性判断jquery对象是否存在
2013/10/18 Javascript
javascript修改IMG标签的src问题
2014/03/28 Javascript
javascript实现树形菜单的方法
2015/07/17 Javascript
Javascript实现快速排序(Quicksort)的算法详解
2015/09/06 Javascript
获取JS中网页各种高宽与位置的方法总结
2016/07/27 Javascript
JS判断是否手机或pad访问实现方法
2016/12/09 Javascript
Vue动态面包屑功能的实现方法
2019/07/01 Javascript
vue项目中监听手机物理返回键的实现
2020/01/18 Javascript
vue实现顶部菜单栏
2020/11/08 Javascript
[38:54]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第一场 11.28
2020/12/01 DOTA
Python def函数的定义、使用及参数传递实现代码
2014/08/10 Python
教你用Python脚本快速为iOS10生成图标和截屏
2016/09/22 Python
Python2.7环境Flask框架安装简明教程【已测试】
2018/07/13 Python
python pands实现execl转csv 并修改csv指定列的方法
2018/12/12 Python
python 读取竖线分隔符的文本方法
2018/12/20 Python
Python的Tkinter点击按钮触发事件的例子
2019/07/19 Python
python全局变量引用与修改过程解析
2020/01/07 Python
python常用运维脚本实例小结
2020/02/14 Python
spyder 在控制台(console)执行python文件,debug python程序方式
2020/04/20 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
CSS3中31种选择器使用方法教程
2013/12/05 HTML / CSS
canvas学习和滤镜实现代码
2018/08/22 HTML / CSS
意大利奢侈品零售商:ilDuomo Novara
2019/09/11 全球购物
平面设计自荐信
2013/10/07 职场文书
网络工程专业毕业生推荐信
2013/10/28 职场文书
国际贸易专业推荐信
2013/11/15 职场文书
商场促销活动总结
2014/07/10 职场文书
2015夏季作息时间调整通知
2015/04/24 职场文书