此语法是否适用于Yii 2删除所有查询?
Model::deleteAll('something is NULL && something2 is NULL');
基本上我希望它只删除匹配两者的行为null且something2为null。
提前致谢!
答案 0 :(得分:0)
解决此问题的简单方法是首先编写一个返回所有行的查询,其中包含的内容为NULL&& something2是NULL' 。将所有这些行id存储在一个数组中,然后使用以下代码。
$model = Modelname::find()->where(['something' => null])->orWhere(['something2'=>null)->all();
$deletedIDs = [];
foreach($model as $model)
{
array_push($deletedIDs,$model->id);
}
Modelname::deleteAll(['id' => $deletedIDs]);