mysql 的 between and 包含两边的边界值,但是在查询时间日期,需要注意;

For Example举例

查询日期时间

发现虽然:日期时间between and 包含了1月3日,但是查询结果是没有1月3日的,这个问题是由于 这个字段是日期时间格式;

日期时间between'2017-01-01'and'2017-01-03'等价于'between 2017-01-01 00:00:00 and 2017-01-03 00:00:00'

但是已经知道 2017-01-03 00:00:00 等于 2017-01-02 23:59:59 所以时间筛选中 只包含1日和2日的,没有3日的数据

解决此问题,可以将日前时间类型,转换成日期行 date(日期时间) between '2017-01-01' and '2017-01-03' 就可以了