暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

mysql between and 遇到日期查询边界问题

SQL数据分析 2021-04-29
1826

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

For Example举例

xx_nullx_values日期日期时间
ax12017/1/12017/1/1 10:00:01
ay22017/1/22017/1/2 12:00:00
bx32017/1/32017/1/3 13:00:00
az42017/1/42017/1/4 14:00:00

查询日期时间

发现虽然:日期时间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' 就可以了

参考


文章转载自SQL数据分析,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论