您现在的位置是:主页 > news > 做it题的网站/推广联系方式
做it题的网站/推广联系方式
admin2025/6/10 12:08:31【news】
简介做it题的网站,推广联系方式,3d建模游戏,做跨境的网站有哪些内容mysql使用between and处理时间区间不包括右边界问题 首先需要告诉大家Mysql数据库对于一般int类型边界的包含左右边界。Oracle数据库也是包含左右边界 最近自己写项目发现mysql使用between and处理时间区间不包括右边界。 SELECT * FROM timeline WHERE username ‘Allen’ A…
mysql使用between and处理时间区间不包括右边界问题
首先需要告诉大家Mysql数据库对于一般int类型边界的包含左右边界。Oracle数据库也是包含左右边界
最近自己写项目发现mysql使用between and处理时间区间不包括右边界。
SELECT * FROM timeline WHERE username = ‘Allen’ AND logTime BETWEEN ‘2017-04-01’ AND DATE_ADD(‘2017-04-04’,INTERVAL 1 DAY);
在查询的结果中没有发现有2017-04-04的记录,一番查找后发现mysql中对日期的查询对时分秒默认的是 00:00:00,所以显示出来的实际上只是‘2017-04-01 00:00:00’到‘2017-04-04 00:00:00‘,2017-04-04这天的记录是查不到的哦。
解决办法:
1,把and后的日期加一天。
SELECT * FROM timeline WHERE username = ‘Allen’ AND logTime BETWEEN ‘2017-04-01’ AND DATE_ADD(‘2017-04-04’,INTERVAL 1 DAY);
2,把and后的日期字符串拼接成’2017-04-04 23:59:59‘.
3,如果是使用oracle的话用TO_CHAR, TO_DATE函数
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
MySQL 日期加减:
DATE_ADD(date,INTERVAL expr type) –加法
DATE_SUB(date,INTERVAL expr type) –减法