登录
首页 >  数据库 >  MySQL

mysql 存储时间格式

来源:SegmentFault

时间:2023-01-18 11:42:08 135浏览 收藏

数据库小白一枚,正在不断学习积累知识,现将学习到的知识记录一下,也是将我的所得分享给大家!而今天这篇文章《mysql 存储时间格式》带大家来了解一下mysql 存储时间格式,希望对大家的知识积累有所帮助,从而弥补自己的不足,助力实战开发!

一.存储类型

msql的5种时间类型:DATETIME、 TIMESTAMP、DATE、TIME、YEAR
外加 INT

日期时间类型占用空间日期格式最小值最大值
DATETIME8 bytesYYYY-MM-DD HH:MM:SS1000-01-01 00:00:009999-12-31 23:59:59
TIMESTAMP4 bytesYYYY-MM-DD HH:MM:SS1970-01-01 00:00:01.0000002038-01-19 03:14:07.999999
int4 bytesunixtime0 (1970年)2147483647 (2038年)
int unsigned4 bytesunixtime0 (1970年)4294967295 (2106年)
DATE4 bytesYYYY-MM-DD1000-01-019999-12-31
TIME3 bytesHH:MM:SS-838:59:59838:59:59
YEAR1 bytesYYYY19012155

二.区别

1.DATETIME 和 TIMESTAMP

TIMESTAMP 可以根据时区,展示不同的DATETIME
(同一个TIMESTAMP,在不同的时区展示不同的DATETIME)

2.TIMESTAMP 与 int

底层都是可以支持 unixtime,不同时区展示不同的时间
但 最大值不一样 如果用 int unsigned 可以到 2106年
不过 TIMESTAMP 可视化很好

关于Unix时间戳(Unix timestamp)

时间戳是自 1970 年 1 月 1 日(00:00:00 GMT)以来的秒数。它也被称为 Unix 时间戳(Unix Timestamp)。

Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。Unix时间戳不仅被使用在Unix系统、类Unix系统中,也在许多其他操作系统中被广泛采用。

参考mysql手册:
https://dev.mysql.com/doc/ref...
https://dev.mysql.com/doc/ref...

谢谢您的观看,欢迎关注我的公众号。

image.png

本篇关于《mysql 存储时间格式》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表