一、传统方式
- 使用 >、<、>=、<= 筛选匹配时间的数据
Db::name('user')->where('create_time','>','2021-1-24')->select();
- between 关键字来设置时间的区间
Db::name('user')->where('create_time','between',['2021-1-1','2021-1-31'])->selelct();
Db::name('user')->where('create_time','not between',['2021-1-1','2021-1-31'])->select();
二、快捷方式
- 时间查询的快建方式为 whereTime(),直接使用 >、<、>=、<=
Db::name('user')->whereTime('create_time','>','2021-1-1')->select();
Db::name('user')->whereTime('create_time','2021-1-1')->select();
- 快捷方式也可以使用 whereBetween() 和 whereNotBetween() ,whereBetweenTime() 程 whereNotBetWeen()
Db::name('user')->whereBetween('create_time',['2021-1-1','2021-1-31'])->select();
Db::name('user')->whereBetweenTime('create_time','2021-1-1','2021-1-31')->select();
三、固定查询
- whereYear() 查询今年的数据,去年的数据,某一年的数据
Db::name('user')->whereYear('create_time')->select();
Db::name('user')->whereYear('create_time','last year')->select();
Db::name('user')->whereYear('crate_time','2017')->select();
- whereMonth() 查询本月的数据,上月的数据,某月的数据
Db::name('user')->whereMonth('create_time')->select();
Db::name('user')->whereMonth('create_time','last month')->select();
Db::name('user')->whereMonth('crate_time','2017-12')->select();
- whereDay() 查询今天的数据,昨天的数据,某一天的数据
Db::name('user')->whereDay('create_time')->select();
Db::name('user')->whereDay('create_time','last day')->select();
Db::name('user')->whereDay('crate_time','2017-12-21')->select();
四、其它查询
- 查询指定时间的数据,比如两个小时内
Db::name('user')->whereTime('create_time','-2 hours')->select();
- 查询两个时间字段有效期的数据,比如会员开始到结束时间
Db::name('user')->whereBetweenTimeField('start_time','end_time')->select();