【发布时间】:2017-12-06 14:52:31
【问题描述】:
我有以下表格列表,我想从中查询数据
users
id email
1 user1@test.com
2 user2@test.com
user_projects
project_id user_id role
1 1 member
1 2 owner
projects
id name
1 example project
我希望结果数据如下所示
project_id name email role owner
1 example project user1@test.com member user2@test.com
简而言之,我想获取用户参与的项目列表以及他的角色和项目所有者。
我想出了以下查询
return DB::table('user_projects')
->join('projects', 'user_projects.project_id', '=', 'projects.id')
->join('users', 'user_projects.user_id', '=', 'users.id')
->where('user_projects.user_id', '=', $userId)
->select('users.email', 'projects.id', 'users.id as user_id','user_projects.role as userRole',
'projects.name')
->get()->toArray();
我能够获取项目列表和用户在项目中的角色,但无法找到项目的电子邮件所有者。
【问题讨论】:
-
请您解释一下 - 电子邮件所有者是什么意思?
-
请使用 select('users.*') 并显示其输出
标签: mysql join laravel-5 laravel-5.3 union