阅读(3309)
赞(6)
Laravel 8 高级 Join 语句
2021-07-07 09:14:23 更新
你可以指定更高级的 join
语句。比如传递一个闭包作为 join
方法的第二个参数。此闭包接收一个 JoinClause
对象,从而指定 join
语句中指定的约束:
DB::table('users')
->join('contacts', function ($join) {
$join->on('users.id', '=', 'contacts.user_id')->orOn(...);
})
->get();
如果你想要在连接上使用「where」 风格的语句,你可以在连接上使用 where
和 orWhere
方法。这些方法会将列和值进行比较,而不是列和列进行比较:
DB::table('users')
->join('contacts', function ($join) {
$join->on('users.id', '=', 'contacts.user_id')
->where('contacts.user_id', '>', 5);
})
->get();