背景是这样的:
本地 tomcat 服务连接的是测试环境的数据库,使用 Mybatis 查询。
本地 MySQL 服务版本:MySQL8
本地 MySQL 驱动版本:8.0.11
测试环境 MySQL 服务版本:MySQL5
控制台打印执行sql:
2018-06-15 10:28:21,010 DEBUG [mobile.activity.dao.MobileUserWinprizeRecordDao.findList] - ==> Preparing: SELECT uwr.id, uwr.user_id userId, uwr.activity_id activityId, uwr.prize_id prizeId, uwr.level, uwr.round, uwr.create_time createTime, uwr.read_flag readFlag FROM activity_user_winprize_record uwr WHERE 1=1 and uwr.activity_id = ? and DATE_FORMAT(uwr.create_time,'%Y-%m-%d') = DATE_FORMAT(?,'%Y-%m-%d')
2018-06-15 10:28:21,034 DEBUG [mobile.activity.dao.MobileUserWinprizeRecordDao.findList] - ==> Parameters: 1(String), 2018-06-15 10:28:20.929(Timestamp)
2018-06-15 10:28:21,066 DEBUG [mobile.activity.dao.MobileUserWinprizeRecordDao.findList] - <== Total: 0
为啥MySQL版本不一致,查询结果也不一致,咋办?
最新推荐文章于 2024-08-09 15:56:53 发布
博主遇到一个问题,本地MySQL8与测试环境MySQL5在执行相同SQL时得到不同结果。怀疑是驱动版本或Timestamp处理方式不同引起的,尝试指定时区和转换Timestamp为String后问题解决,但有时会自行恢复正常,对于此现象感到困惑并寻求解答。
摘要由CSDN通过智能技术生成