繁体   English   中英

如何在Laravel中进行连接选择?

[英]How to make a join select in Laravel?

我现在得到的是我检索所有用户然后循环每个用户并检查是否有项目,否则如果在我们检索项目名称时没有关系,我们将收到错误

$users = User::all();


foreach($users as $user)
{
  if($user->item)
  {
     echo $user->item->name;
  }

}

我的问题是如何选择项目表中具有关系的所有用户记录? 在laravel-4中使用雄辩的模型?

我问这个因为这里http://laravel.com/docs/eloquent - 不是使用连接的例子,只是在选择后加入它们,但这不好,因为我们选择所有行而不是只有那些关系,我们也不必检查项目是否存在,因为我们已经知道该项目确实存在...

所有你需要的是:

$users = User::has('item')->get();

这里的第一个例子是http://laravel.com/docs/eloquent#querying-relations

http://laravel.com/docs/queries#joins

尝试这个

DB::table('users')
            ->join('item', 'users.id', '=', 'item.user_id')
            ->select('item.name')
            ->get();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM