Yii - 查找相关记录为零的记录
Yii - find records with zero related records
有两个型号:Auteurs
和 Books
。 Auteurs
模型包含以下关系:
public function relations() {
return array(
'books' => array(self::MANY_MANY, 'Books','a_liens(id_auteur,id_book)'),
'booksCount' => array(self::STAT, 'Books', 'a_liens(id_auteur,id_book)'),
);
}
如何编写条件使所有 Auteurs
为零 booksCount
?
您可能只找到 Auteurs
个没有任何书籍的模型,而不是计算书籍 - 结果是一样的,但问题是不同的。您可以通过使用 LEFT JOIN
并查找缺少书籍的记录来实现此目的:
$auteurs->with([
'books' => [
'together' => true,
'select' => false,
'joinType' => 'LEFT JOIN',
'condition' => 'books.id IS NULL',
],
]);
有两个型号:Auteurs
和 Books
。 Auteurs
模型包含以下关系:
public function relations() {
return array(
'books' => array(self::MANY_MANY, 'Books','a_liens(id_auteur,id_book)'),
'booksCount' => array(self::STAT, 'Books', 'a_liens(id_auteur,id_book)'),
);
}
如何编写条件使所有 Auteurs
为零 booksCount
?
您可能只找到 Auteurs
个没有任何书籍的模型,而不是计算书籍 - 结果是一样的,但问题是不同的。您可以通过使用 LEFT JOIN
并查找缺少书籍的记录来实现此目的:
$auteurs->with([
'books' => [
'together' => true,
'select' => false,
'joinType' => 'LEFT JOIN',
'condition' => 'books.id IS NULL',
],
]);