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的一个完整SMTP类(解决邮件服务器需要验证时的问题)
Oct 09 PHP
PHP通用分页类page.php[仿google分页]
Aug 31 PHP
php上传文件常见问题总结
Feb 03 PHP
PHP使用MPDF类生成PDF的方法
Dec 08 PHP
PHP基于cookie与session统计网站访问量并输出显示的方法
Jan 15 PHP
一段实用的php验证码函数
May 19 PHP
浅谈mysql_query()函数的返回值问题
Sep 05 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
Aug 28 PHP
PHP迭代器接口Iterator用法分析
Dec 28 PHP
PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例
May 23 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
Dec 13 PHP
PHP查找一列有序数组是否包含某值的方法
Feb 07 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
改进的IP计数器
2006/10/09 PHP
php面向对象全攻略 (十五) 多态的应用
2009/09/30 PHP
php 日期时间处理函数小结
2009/12/18 PHP
ThinkPHP3.1新特性之Action参数绑定
2014/06/19 PHP
javascript中最常用的继承模式 组合继承
2010/08/12 Javascript
javascript学习笔记(三) String 字符串类型介绍
2012/06/19 Javascript
JavaScript中instanceof与typeof运算符的用法及区别详细解析
2013/11/19 Javascript
jquery限定文本框只能输入数字即整数和小数
2013/11/29 Javascript
Jquery 切换不同图片示例代码
2013/12/05 Javascript
JS生成随机字符串的多种方法
2014/06/10 Javascript
基于jQuery实现动态搜索显示功能
2016/05/05 Javascript
JS使用正则实现去掉字符串左右空格的方法
2016/12/27 Javascript
AngularJS的ng-repeat指令与scope继承关系实例详解
2017/01/21 Javascript
ES6中的箭头函数实例详解
2017/04/06 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
详解vuex的简单使用
2018/03/12 Javascript
vue项目如何刷新当前页面的方法
2018/05/18 Javascript
微信小程序module.exports模块化操作实例浅析
2018/12/20 Javascript
说说如何利用 Node.js 代理解决跨域问题
2019/04/22 Javascript
vue.js实现双击放大预览功能
2020/06/23 Javascript
OpenLayers3实现地图鹰眼以及地图比例尺的添加
2020/09/25 Javascript
js中实现继承的五种方法
2021/01/25 Javascript
python九九乘法表的实例
2017/09/26 Python
基于python 爬虫爬到含空格的url的处理方法
2018/05/11 Python
python 实现登录网页的操作方法
2018/05/11 Python
Python实现模拟浏览器请求及会话保持操作示例
2018/07/30 Python
对pandas通过索引提取dataframe的行方法详解
2019/02/01 Python
使用TensorFlow对图像进行随机旋转的实现示例
2020/01/20 Python
new_zeros() pytorch版本的转换方式
2020/02/18 Python
Django数据库迁移常见使用方法
2020/11/12 Python
阿里云:Aliyun.com
2017/02/15 全球购物
几个数据库方面的面试题
2016/07/01 面试题
Unix里面如何在后台运行程序
2016/10/14 面试题
理工大学毕业生自荐信
2013/11/01 职场文书
入党思想汇报怎么写
2014/04/03 职场文书
离婚上诉状范文
2015/05/23 职场文书