Yii2:Active Record添加Not In条件

Man*_*uer 35 activerecord yii yii2

什么是在yii 1.x中将IN条件添加到活动查询的活动记录方式,您可以像这样使用CDbCriteria

$cr = new CDbCriteria();
$cr->addNotInCondition('attribute', $array);
Run Code Online (Sandbox Code Playgroud)

在yii2活动记录实现中似乎没有等效的API调用,如何通过活动记录执行此操作?

Man*_*uer 76

好吧,所有查询操作数似乎现在都在yii\db\QueryInterface::Where()每个文档中合并,现在可以使用类似的东西添加In条件

$query = MyModel::find()->where(['attribute'=>$array]);
Run Code Online (Sandbox Code Playgroud)

对于非In状态,它的格式略有不同

$query = MyModel::find()->where(['not in','attribute',$array]);
Run Code Online (Sandbox Code Playgroud)

  • 这将失败,我们需要:$ query = MyModel :: find() - > where(['attribute'=> $ array]) - > all(); (3认同)

小智 5

$query = MyModel::findAll(['not in ','attribute',$array]);
Run Code Online (Sandbox Code Playgroud)

http://www.yiiframework.com/doc-2.0/guide-db-active-record.html

  • “不在”中的空格是多余的 (2认同)