Heim > Artikel > Backend-Entwicklung > Yii2-Abfrage zum Hinzufügen, Löschen, Ändern und Abfragen, wobei Parameter im detail_php-Beispiel eingeführt werden
Übersicht
Da das offizielle Handbuch relativ wenig Einführung in den Ort enthält, möchte ich es selbst organisieren, damit jeder etwas lernen und noch einmal nachschauen kann. In diesem Artikel werden die Verwendung und Beispiele von and, or, between, in und like in der where-Methode ausführlich vorgestellt.
und
// 我们要查询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()方法会将数据以数组的方式显示
oder
// 我们要查询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();
zwischen
// 我们要查询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();
Gefällt mir
// 我们要查询name中包含“张”这个字符的数据 $userInfo = User::find()->where(['like' , 'name' , '张'])->all(); // 我们假如要通配name中包含“张”这个字符,而且还得包含“三”这个字符 $userInfo = User::find()->where(['like' , 'name' , ['张' , '三']])->all(); // 我们假如只需要通配左边即可 $userInfo = User::find()->where(['like' , 'name' , '%三' , false])->all(); // 所以,右边也是同样
Das Obige ist das relevante Wissen, das Ihnen der Herausgeber über die detaillierte Einführung der Where-Parameter von Yii2 zum Hinzufügen, Löschen, Ändern und Abfragen vermittelt hat. Wenn Sie Fragen haben, hinterlassen Sie bitte Schicken Sie mir eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte mich auch bei Ihnen allen für Ihre Unterstützung der Script House-Website bedanken!