阅读(3624) (10)

Laravel 8 Or 语句

2021-07-07 09:14:26 更新

你可以一起链式调用 where 约束,也可以在查询中添加 or 字句。orWhere 方法和 where 方法接收的参数一样:

$users = DB::table('users')
                    ->where('votes', '>', 100)
                    ->orWhere('name', 'John')
                    ->get(); 

如果需要在括号内对 or 条件进行分组,将闭包作为 orWhere 方法的第一个参数也是可以的:

$users = DB::table('users')
            ->where('votes', '>', 100)
            ->orWhere(function($query) {
                $query->where('name', 'Abigail')
                      ->where('votes', '>', 50);
            })
            ->get();

// SQL语句: select * from users where votes > 100 or (name = 'Abigail' and votes > 50)