我有两个名为'users'和'赞助商'的表格 - 首先是'用户',第二个是'赞助商'
我正在尝试从“用户”表中获取用户详细信息,其中“赞助商”表中的所有用户都使用其他用户“user_name”作为其赞助商。我写了一些像bellow-当试图连接表然后得到这个错误。什么应该是正确的查询?请有人帮助我。
$a = Sentinel::getUser()->user_name;
$m = DB::table('sponsors')
->select('user_name')
->where('sponsor', '=', $a)
->get();
//dd($m);
$second_downline_members = DB::table('sponsors')
->join('users', 'users.id', '=', 'sponsors.user_id')
->where('users.id', $m)
->get();
dd($second_downline_members);
答案 0 :(得分:0)
$a = Sentinel::getUser()->user_name;
$m = DB::table('sponsors')
->select('user_name')
->where('sponsor', '=', $a)
->first();
//dd($m);
$second_downline_members = DB::table('sponsors')
->join('users', 'users.id', '=', 'sponsors.user_id')
->where('users.id', $m->id)
->get();
dd($second_downline_members);
试试这个
答案 1 :(得分:0)
$username = Sentinel::getUser()->user_name;
$user_ids = \DB::table('sponsors')
->where('sponsor', $username)
->pluck('user_id');
$users = \DB::table('users')->whereIn('id', $user_ids)->get();
dd($users);
答案 2 :(得分:0)
将您的选择更改为
->select('user_name', 'id')