您的位置:首页 > 编程语言 > PHP开发

十三、PHP框架Laravel学习笔记——构造器的 where 派生查询

2021-05-08 13:04 1151 查看

一.where 派生查询

  1. orWhere()方法,可以通过连缀实现两个或以上的 or 条件查询;
//where() + orWhere 实现 or 条件查询
$users = DB::table('users') ->where('price', '>', 95) ->orWhere('gender', '女') ->toSql();


  1. 通过闭包,我们还可以构建更加复杂的 orWhere 查询;
//orWhere()结合闭包查询
$users = DB::table('users')
->where('price', '>', '95')
->orWhere(function ($query) {
$query->where('gender', '女') ->where('username', 'like', '%小%');
})->toSql();

  1. whereBetween()可以实现区间查询,比如价格在一个区间内的用户;
//whereBetween 查询区间价格 60~90 之间
$users = DB::table('users')->whereBetween('price', [60, 90])->toSql();

PS:这里还支持相关三种:whereNotBetween/orWhereBetween/orWhereNotBetween;


  1. whereIn()可以实现数组匹配查询,比如匹配出数组里指定的数据;
//whereIn 查询数组里匹配的数值
$users = DB::table('users')->whereIn('id', [20,30,50])->toSql();

PS:这里还支持相关三种:whereNotIn/orWhereIn/orWhereNotIn;

5. whereNull()可以查询字段为 Null 的记录;

//whereNull 查询字段值为 Null 的记录
$users = DB::table('users')->whereNull('uid')->toSql();

PS:这里还支持相关三种:whereNotNull/orWhereNull/orWhereNotNull;

  1. whereDate()可以查询指定日期的记录;
//whereYear 查询指定日期的记录,或大于
$users = DB::table('users')->whereDate('create_time', '2018-12-11')->toSql();

PS:这里还支持相关四种:whereYear/whereMonth/whereDay/whereTime,支持 or 前缀;
PS:三个参数支持大于小于之类的操作 orWhereDate(‘create_time’,’>’, ‘2018-12-11’)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: