MySQL中Date,DateTime,TimeStamp和Time的区别说明

这篇博客详细介绍了MySQL中Date, Time, DateTime和TimeStamp的区别。重点比较了DateTime和TimeStamp在精度和使用场景上的差异,DateTime可精确到秒,而Timestamp通常用于需要考虑不同时区的场景,避免时差问题。文章还提醒读者不要仅凭显示格式判断二者,Timestamp实际上存储的是时间戳。" 127673566,8828709,Java线程同步详解,"['Java', '多线程', '并发编程', '锁机制', '线程安全']

1.Date
在这里插入图片描述
2.Time
在这里插入图片描述

3.DateTime
在这里插入图片描述
4.TimeStamp
在这里插入图片描述

6.Date,DateTime,TimeStamp和Time 比较
Date,DateTime,Time 三者显示以及精度都不一样,需要大家根据具体需求,进行选择。

重点对比:
DateTime和TimeStamp都是年月日时分秒,为什么还有这两个类型呢?
1)精度:DateTime和TimeStamp都可以精确到毫秒(我目前使用的5.5的mysql,所以只能精确到秒,高版本的可以用TIMESTAMP(3)与 DATETIME(3)精确到毫秒。),但是用的很少,一般精确到毫秒都是用Timestamp,另外关于Timestamp的10位和13位的区别请参考我的另一篇文章java时间戳 10位和13位分别是怎么来的?
可以查看网址:https://blog.csdn.net/qq_28483283/article/details/80583197
2)DateTime和TimeStamp最大的区别只是用的场景不同如果你的应用 是用于不同时区(就是国内和国外同时使用),这时候如果用dateTime就会出现各种各样的问题,但是如果使用TimeStamp就不会出现这种时差的问题。

误区:之前我也也为datetime和TimeStamp是一样的,因为他们在数据库存的时间都是YYYY-MM-DD HH:mm:ss格式的,但是TimeStamp类型存的是10位或者13位的时间戳,不要被表现骗了,使用

`select UNIX_TIMESTAMP(TIME) date from table`

即可获取时间戳里面具体存的内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值