【发布时间】:2017-01-30 12:14:24
【问题描述】:
我有两个 Eloquent 模型(例如:书籍和作者),它们具有一对多的关系(一个作者可以有很多本书,每本书只有一个作者)。该数据库还包含根本没有书的作者。我想检索所有拥有一本书的作者的列表 - 没有重复作者。
目前我会遍历所有 Book 实例,如果作者尚未在列表中,则将其添加到列表中:
$books = Books::all();
$list = [];
foreach ($books as $book) {
if (! in_array($book->author, $list) ) {
array_push($list, $book->author);
}
}
我想知道是否有更聪明的方法来获得这个,即减少数据库查询次数的方法。
【问题讨论】: