Sql 从两个表中获取一个值
我试图从clubs表中获取colum“name”的值 第一桌:(俱乐部)Sql 从两个表中获取一个值,sql,laravel,join,pdo,Sql,Laravel,Join,Pdo,我试图从clubs表中获取colum“name”的值 第一桌:(俱乐部) 身份证* 姓名(我需要的!!!) 电子邮件 密码 第二张表格:(俱乐部帖子) 身份证 俱乐部id* 邮政编码 卡蒂戈里 类型 斯塔特 plz 控制器: public function search(Request $request) { $zip = $request->input('zip'); $users = Post::where('zip_id', 'like', $zip
- 身份证*
- 姓名(我需要的!!!)
- 电子邮件
- 密码
- 身份证
- 俱乐部id*
- 邮政编码
- 卡蒂戈里
- 类型
- 斯塔特
- plz
public function search(Request $request)
{
$zip = $request->input('zip');
$users = Post::where('zip_id', 'like', $zip)
->orderBy('date')
->paginate(25);
$clubs = ClubPost::where('zip_id', 'like', $zip)
->orderBy('updated_at')
->paginate(25);
$city = Zip::where('zip_code', 'like', $zip)
->value('city');
$names = Club::select('name')
->leftJoin('club_posts', 'club_id', '=', 'clubs.id')
->get();
这是我的问题:
public function search(Request $request)
{
$zip = $request->input('zip');
$users = Post::where('zip_id', 'like', $zip)
->orderBy('date')
->paginate(25);
$clubs = ClubPost::where('zip_id', 'like', $zip)
->orderBy('updated_at')
->paginate(25);
$city = Zip::where('zip_code', 'like', $zip)
->value('city');
$names = Club::select('name')
->leftJoin('club_posts', 'club_id', '=', 'clubs.id')
->get();
结果是一个包含十个值的数组,但只需要一个值。在ClubPost模型中创建一个关系俱乐部,以便可以使用关系访问该俱乐部帖子的俱乐部 ClubPost模型
public function club(){
return $this->belongsTo(App\Club::class, 'club_id', 'id');
}
现在,如果您想访问俱乐部帖子的名称(或任何其他属性),您可以使用俱乐部关系
在你的刀刃上,你会在$club_的帖子上循环
@foreach($club_posts as $club_post)
{{ $club_post->club->name }}
@endforeach
另外,在控制器中加载俱乐部关系
$club_posts = ClubPost::with('club')
->where('zip_id', 'like', $zip)
->orderBy('updated_at')
->paginate(25);
您可以使用groupBy返回单个结果
$names = Club::select('name')
->leftJoin('club_posts', 'club_id', '=', 'clubs.id')
->groupBy('name')
->get();