目录
在Yii2的ActiveRecord查询中,andWhere()和andFilterWhere()都是用于添加查询条件的 方法,但它们在使用和功能上有所不同。
示例:
$query = Post::find()->where(['status' => 'published'])->andWhere(['author_id' => 123]);
示例:
$query = Post::find()->where(['status' => 'published'])->andFilterWhere(['author_id' => 123]);
或者使用数组形式:
$query = Post::find()->where(['status' => 'published'])->andFilterWhere([
'author_id' => 123,
'created_at' => '<', new \DateTime(),
]);
总结来说,andWhere() 和 andFilterWhere() 都可以用来添加“AND”条件到现有的查询中,但 andFilterWhere() 可以一次性添加多个条件,而 andWhere() 通常是添加一个条件。选择使用哪个方法取决于你的具体需求。如果你只需要添加一个条件,andWhere() 可能更简洁;如果你需要添加多个条件,andFilterWhere() 可能更方便。
?