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 相关文章推荐
使用Xdebug调试和优化PHP程序之[1]
Apr 17 PHP
PHP 防恶意刷新实现代码
May 16 PHP
批量获取memcache值并按key的顺序返回的实现代码
Jun 14 PHP
php判断上传的Excel文件中是否有图片及PHPExcel库认识
Jan 11 PHP
php 备份数据库代码(生成word,excel,json,xml,sql)
Jun 23 PHP
php 启动时报错的简单解决方法
Jan 27 PHP
PHP函数分享之curl方式取得数据、模拟登陆、POST数据
Jun 04 PHP
linux下实现定时执行php脚本
Feb 13 PHP
100多行PHP代码实现socks5代理服务器[2]
May 05 PHP
CodeIgniter记录错误日志的方法全面总结
May 17 PHP
PHP判断一个数组是另一个数组子集的方法详解
Jul 31 PHP
php中pcntl_fork详解
Apr 01 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连接Oracle for NT 远程数据库
2006/10/09 PHP
PHP学习之整理字符串
2011/04/17 PHP
php操作mongoDB实例分析
2014/12/29 PHP
PHP解密Unicode及Escape加密字符串
2015/05/17 PHP
PHP中异常处理的一些方法整理
2015/07/03 PHP
PHP实现用户异地登录提醒功能的方法【基于thinkPHP框架】
2018/03/15 PHP
laravel 实现关闭CSRF(全部关闭、部分关闭)
2019/10/21 PHP
仅Firefox中链接A无法实现模拟点击以触发其默认行为
2011/07/31 Javascript
javascript学习笔记(十四) window对象使用介绍
2012/06/20 Javascript
利用js实现选项卡的特别效果的实例
2013/03/03 Javascript
js倒计时小程序
2013/11/05 Javascript
document节点对象的获取方式示例介绍
2013/12/24 Javascript
JavaScript图片轮播代码分享
2015/07/31 Javascript
jQuery移动web开发中的页面初始化与加载事件
2015/12/03 Javascript
jQuery删除当前节点元素
2016/12/07 Javascript
AngularJS路由切换实现方法分析
2017/03/17 Javascript
详解如何让InstantClick兼容MathJax、百度统计等
2017/09/12 Javascript
Angularjs 手写日历的实现代码(不用插件)
2017/10/18 Javascript
jQuery选择器之基本过滤选择器用法实例分析
2019/02/19 jQuery
vue实现将数据存入vuex中以及从vuex中取出数据
2019/11/08 Javascript
JS实现百度搜索框关键字推荐
2020/02/17 Javascript
javascript 设计模式之组合模式原理与应用详解
2020/04/08 Javascript
[04:03]DOTA2英雄梦之声_第02期_风暴之灵
2014/06/30 DOTA
写了个监控nginx进程的Python脚本
2012/05/10 Python
python 第三方库的安装及pip的使用详解
2017/05/11 Python
Python常用特殊方法实例总结
2019/03/22 Python
SportsDirect.com马来西亚:英国第一体育零售商
2018/11/21 全球购物
旅游管理专业个人求职信范文
2013/12/24 职场文书
体育运动会广播稿
2014/10/05 职场文书
群众路线查摆问题整改措施
2014/10/10 职场文书
预备党员自我评价范文
2015/03/04 职场文书
毕业生个人自荐书
2015/03/05 职场文书
大学体育课感想
2015/08/10 职场文书
Windows10下安装MySQL8
2021/04/06 MySQL
Mysql 如何实现多张无关联表查询数据并分页
2021/06/05 MySQL
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python