问题
How can I do the equivalent in Eloquent (i.e. Model::where(...)->join(...)
?:
DB::select('SELECT users.id, users.username
FROM users, teams, teams AS teams2
WHERE users.team_id = teams2.id
AND teams.id = ?
AND teams2.l BETWEEN teams.l AND teams.r', [$id])
回答1:
Edited:
$team = Team::find($id);
$users = User::join('teams', 'teams.id', '=', 'users.team_id')
->whereBetween('teams.l', [$team->l, $team->r])
->get(['users.id', 'users.username']);
来源:https://stackoverflow.com/questions/41714718/mysql-query-in-laravel-eloquent