0
我有我的数据库user_projects
的列中3个表中laravel加入3个表使用DB类似列名
project_id,
user_id,
role
project_invitations
与列
project_id,
email,
role
最后users
id, email
我想使用laravel查询生成器来加入这三个表,以便我可以得到
userid, role, email, invited_user
null member [email protected] true
1 owner [email protected] false
2 member [email protected] true
到目前为止,我得到了以下数据
[
{
"email":"[email protected]",
"id":2,
"role":"owner",
"invitedEmail":"[email protected]",
"invitedRole":"member"
},
{
"email":"[email protected]",
"id":2,
"role":"owner",
"invitedEmail":"[email protected]",
"invitedRole":"member"
}
]
使用下面的查询
DB::table('user_projects')
->join('users', 'user_projects.user_id', '=', 'users.id')
->join('project_invitations', 'project_invitations.project_id','=','user_projects.project_id')
->where('user_projects.project_id', '=', $projectId)
->select('users.email', 'users.id', 'user_projects.role', 'project_invitations.email as invitedEmail','project_invitations.role as invitedRole')
->get();
你不能用在你想要的结果上'users.id'加入'users'表你想要的结果有一个空id其中一个用户不存在这不会加入该列。 –