【发布时间】:2015-10-26 10:14:19
【问题描述】:
如何在 Laravel Eloquent 中做这个查询?
SELECT * FROM `ftm_users`, `ftm_students`, `ftm_user_verification` WHERE `ftm_users`.`user_group` = 3 AND `ftm_user_verification`.`verification_status` = 1 AND `ftm_users`.`uid` = `ftm_students`.`uid` AND `ftm_users`.`uid` = `ftm_user_verification`.`uid`
我已经在模型中设置了关系,我已经尝试过了
$userStudent = User::where('user_group', '=', 3)->with(array('userVerification' => function($query) {
$query->where('verification_status', '=', 1);
}, 'student', 'studentParents'))->simplePaginate(20);
但查询是使用单独的选择语句从不同的表中获取数据。
谢谢。
【问题讨论】:
-
您显示的查询将不起作用,您必须使用连接来过滤另一个表。
-
您能否更具体地回答您的问题?您的第一个
mysql语句显示了进行连接的尝试。第二个代码是尝试选择过滤记录。
标签: php mysql laravel laravel-5 eloquent