MySQL中datetime时间字段的四舍五入操作


Posted in MySQL onOctober 05, 2021

前言

如果不是踩到坑,我估计到现在还不知道时间字段会四舍五入。

1、背景

通过 Java 代码获取当日最大时间,然后存入数据库,数据库表字段格式 datetime 保留 0 位。

now.with(LocalTime.MAX)

小小的一行代码,获取今天的最大日期。

到数据库一看,好家伙,竟然存了第二天的时间。

MySQL中datetime时间字段的四舍五入操作

看着样子是四舍五入了!

2、模拟测试

MySQL中datetime时间字段的四舍五入操作

MySQL中datetime时间字段的四舍五入操作

执行之后,看一下日志:

MySQL中datetime时间字段的四舍五入操作

使用的是 2021-09-28T23:59:59.999999999,但是很奇怪的是数据库存储的是 2021-09-29 00:00:00。

直接使用 SQL 试一试:

MySQL中datetime时间字段的四舍五入操作

这…… 果然是四舍五入了。

换成 MariaDB 试试!

docker pull mariadb

docker run -d --name mariadb -p 33306:33306 -e "MYSQL_ROOT_PASSWORD=root" mariadb

docker exec -it mariadb bash

MySQL中datetime时间字段的四舍五入操作

MariaDB 是直接舍弃多余位数的!

3、结论

MySQL 时间如果传入的值超过精度范围,会进行四舍五入。

MariaDB 时间如果传入的值超过精度范围,会直接舍弃。

踩了个小坑。最后还是硬编码吧!

now.with(LocalTime.parse("23:59:59"))

总结

到此这篇关于MySQL中datetime时间字段的四舍五入的文章就介绍到这了,更多相关MySQL datetime四舍五入内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
MySQL获取所有分类的前N条记录
May 07 MySQL
ORM模型框架操作mysql数据库的方法
Jul 25 MySQL
MySQL中一条update语句是如何执行的
Mar 16 MySQL
mysql 获取时间方式
Mar 20 MySQL
MySQL库表太大怎么办? 数据库分库分表项目实践
Apr 11 MySQL
深入理解mysql事务隔离级别和存储引擎
Apr 12 MySQL
MySQL创建管理子分区
Apr 13 MySQL
Mysql调整优化之四种分区方式以及组合分区
Apr 13 MySQL
MySQL数据库简介与基本操作
May 30 MySQL
MySQL中order by的执行过程
Jun 05 MySQL
MySQL数据库实验实现简单数据库应用系统设计
Jun 21 MySQL
MySQL使用IF语句及用case语句对条件并结果进行判断 
Sep 23 MySQL
mysql如何能有效防止删库跑路
Oct 05 #MySQL
浅谈MySQL表空间回收的正确姿势
浅谈MySQL函数
Oct 05 #MySQL
Mysql binlog日志文件过大的解决
Oct 05 #MySQL
MySQL修炼之联结与集合浅析
MySQL分库分表详情
MySQL空间数据存储及函数
Sep 25 #MySQL
You might like
php生成毫秒时间戳的实例讲解
2017/09/22 PHP
php-app开发接口加密详解
2018/04/18 PHP
原生JS实现Ajax通过GET方式与PHP进行交互操作示例
2018/05/12 PHP
php微信开发之关注事件
2018/06/14 PHP
js判断输入是否为正整数、浮点数等数字的函数代码
2010/11/17 Javascript
5个JavaScript经典面试题
2014/10/13 Javascript
高性能JavaScript模板引擎实现原理详解
2015/02/05 Javascript
JavaScript中使用Math.PI圆周率属性的方法
2015/06/14 Javascript
jquery实现不包含当前项的选择器实例
2015/06/25 Javascript
辨析JavaScript中的Undefined类型与null类型
2016/05/26 Javascript
js实现StringBuffer的简单实例
2016/09/02 Javascript
H5移动端图片压缩上传开发流程
2016/11/09 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
解决vue里碰到 $refs 的问题的方法
2017/07/13 Javascript
实现两个文本框同时输入的实例
2017/09/25 Javascript
jQuery 实现左右两侧菜单添加、移除功能
2018/01/02 jQuery
swiper在angularjs中使用循环轮播失效的解决方法
2018/09/27 Javascript
JavaScript动态创建二维数组的方法示例
2019/02/01 Javascript
vue中引入mxGraph的步骤详解
2019/05/17 Javascript
JS原型和原型链原理与用法实例详解
2020/02/05 Javascript
微信小程序实现单个或多个倒计时功能
2020/11/01 Javascript
Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法
2018/04/22 Python
Python爬虫将爬取的图片写入world文档的方法
2018/11/07 Python
python实现名片管理系统
2018/11/29 Python
Python 获取指定文件夹下的目录和文件的实现
2019/08/30 Python
Windows10下 python3.7 安装 facenet的教程
2019/09/10 Python
Window版下在Jupyter中编写TensorFlow的环境搭建
2020/04/10 Python
如何用用Python将地址标记在地图上
2021/02/07 Python
CSS3美化表单控件全集
2016/06/29 HTML / CSS
简单介绍Object类的功能、常用方法
2013/10/02 面试题
Linux管理员面试题 Linux admin interview questions
2014/11/01 面试题
面向对象设计的原则是什么
2013/02/13 面试题
低碳环保口号
2014/06/12 职场文书
汽车服务工程专业自荐信
2014/09/02 职场文书
劳务派遣管理制度(样本)
2019/08/23 职场文书
Django数据库(SQlite)基本入门使用教程
2022/07/07 Python