【发布时间】:2015-02-18 10:48:31
【问题描述】:
我有用户和电子邮件表。每个用户有很多电子邮件,每个电子邮件可以有很多用户。我有 users_email 数据透视表来查询数据。
$all=User::with('emails')->get();
上述查询工作正常,但现在我想使用 WHERE 子句来获取具有特定电子邮件的特定用户。到目前为止我已经尝试过了,但结果是不可预测的。
$all=User::with(array('emails'=>function($query){
$query->where('users.Id','=','78')->where('emails.Id','=','124');
}))->first();
我希望运行这个查询,但实际上它没有
select * from users inner join users_email on
users.Id=user_email.Uid inner join email on
email.Id=user_email.email_id where email.Id=78
AND users.Id=45
【问题讨论】: