Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从两个表中获取一个值_Sql_Laravel_Join_Pdo - Fatal编程技术网

Sql 从两个表中获取一个值

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

我试图从clubs表中获取colum“name”的值

第一桌:(俱乐部)

  • 身份证*
  • 姓名(我需要的!!!)
  • 电子邮件
  • 密码
第二张表格:(俱乐部帖子)

  • 身份证
  • 俱乐部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();