我想检索发布者的姓名 论坛主题中的最后一条评论。 这就是我在PhpMyAdmin所做的工作,因此我得到了正确的值:
select commentaires.auteur
from commentaires inner join sujets on commentaires.sujet_id = sujets.id
where commentaires.id = (
select max(commentaires.id)
from commentaires inner join sujets on commentaires.sujet_id = sujets.id
where sujets.id = 12
);
我以为使用QueryBuilder来检索值 我想,但我意识到这很复杂.. 这是我的一篇论文:
DB::table('commentaires')->join('sujets',
'sujets.id','=','commentaires.sujet_id')
->where(['commentaires.id' => DB::raw('max(commentaires.id')])
->where('sujets.id','=', $unSujet->id)
->value('commentaires.auteur')
或者你会有一个更简单的想法吗? 提前感谢您的帮助。
答案 0 :(得分:0)
您应该使用Eloquent。
Eloquent为连接模型提供great fluent interface。 您将能够通过以下方式访问最新评论:
ForumTopic::find($id)->commentaires()->orderBy('created_at', 'DESC')->first()
您可以在具有公共功能的模型中实现它
<强> ForumTopic.php 强>
public function commentaires(){
return $this->hasMany(Commentary::class);
}