
Thinkphp 6.0数据库的时间查询
Thinkphp 6.0下时间的所有查询方式,包括传统式、快捷方式和固定查询等
·
本节课我们要单独学习一下时间的所有查询方式,包括传统式、快捷方式和固定查询等。
一.传统方式
1. 可以使用>、<、>=、<=来筛选匹配时间的数据;
Db::name('user')->where('create_time', '>', '2018-1-1')->select();
1. 可以使用 between 关键字来设置时间的区间;
Db::name('user')->where('create_time', 'between', ['2018-1-1',
'2019-12-31'])->select();
Db::name('user')->where('create_time', 'not between', ['2018-1-1',
'2019-12-31'])->select();
二.快捷方式
1. 时间查询的快捷方法为 whereTime(),直接使用>、<、>=、<=;
Db::name('user')->whereTime('create_time', '>', '2018-1-1')->select();
2. 快捷方式也可以使用 between 和 not between;
Db::name('user')->whereBetween('create_time', ['2018-1-1',
'2019-12-31'])->select();
3. 还有一种快捷方式为:whereBetweenTime()和 whereNotBetweenTime();
Db::name('user')->whereBetweenTime('create_time', '2018-1-1',
'2019-12-31')->select();
4. 默认的大于>,可以省略;
Db::name('user')->whereTime('create_time', '2018-1-1')->select();
三.固定查询
1. 使用 whereYear 查询今年的数据、去年的数据和某一年的数据
Db::name('user')->whereYear('create_time')->select();
Db::name('user')->whereYear('create_time', 'last year')->select();
Db::name('user')->whereYear('create_time', '2016')->select();
2. 使用 whereMonth 查询当月的数据、上月的数据和某一个月的数据;
Db::name('user')->whereMonth('create_time')->select();
Db::name('user')->whereMonth('create_time', 'last month')->select();
Db::name('user')->whereMonth('create_time', '2016-6')->select();
3. 使用 whereDay 查询今天的数据、昨天的数据和某一个天的数据;
Db::name('user')->whereDay('create_time')->select();
Db::name('user')->whereDay('create_time', 'last day')->select();
Db::name('user')->whereDay('create_time', '2016-6-27')->select();
四.其它查询
1. 查询指定时间的数据,比如两小时内的;
Db::name('user')->whereTime('create_time', '-2 hours')->select();
2. 查询两个时间字段时间有效期的数据,比如会员开始到结束的期间;
Db::name('user')->whereBetweenTimeField('start_time',
'end_time')->select();
更多推荐
所有评论(0)