Home  >  Article  >  Backend Development  >  Yii2 add, delete, modify and query query where parameter is introduced in detail

Yii2 add, delete, modify and query query where parameter is introduced in detail

高洛峰
高洛峰Original
2017-01-21 11:17:071182browse

Overview

Since the official manual has relatively few introductions about where, I would like to organize it myself so that everyone can learn and check back. This article will introduce in detail the usage and examples of and, or, between, in, and like in the where method.

and

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

or

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

between

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

in

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

like

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

The above is the relevant knowledge introduced by the editor to you about the detailed introduction of the where parameter of the Yii2 add, delete, modify and query query. I hope it is helpful to you. If you have any questions, please leave me a message and I will reply to you in time. I would also like to thank you all for your support of the PHP Chinese website!

For more Yii2 add, delete, modify and query queries where parameters are introduced in detail, please pay attention to the PHP Chinese website for related articles!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn