mysql, mysql中的日期类型有哪些?不知道小伙伴们今天来看看边肖的分享吧!
mysql中的日期类型有:日期、时间、年份、日期时间和时间戳。每个时间类型都有一个有效值范围和一个零值,在指定非法MySQL无法表示的值时使用。
时间戳类型具有专有的自动更新功能。
1. Date
日期范围:1000年1月1日/9999年12月31日
格式:YYYY-MM-DD
用法:日期值
2. Time
时间范围:-838:59:59/838:59:59
Format: hour: minute: second
用法:时间值或持续时间
3. Year
年份范围:1901/2155
格式:YYYY
用法:年值
4. Date and time
Date and time range: 1000-01-01 00: 00/9999-12-31 23: 59: 59.
格式:YYYY-MM-DD HH:MM:SS
用法:混合日期和时间值
5. Time stamp
Timestamp range:
1970-01-01 00:00:00/2038
结束时间为2147483647秒,北京时间2038年1月19日11: 14: 07,格林威治时间2038年1月19日03:14:07。
格式:YYYYMMDD HHMMSS
用法:混合日期和时间值,时间戳。
扩展信息:
Time stamp and date-time comparison:
相似之处:
两者都可以用来表示YYYY-MM-DD HH:MM:SS类型的日期。
差异:
它们的存储方法、大小(字节)和范围是不同的。
TIMESTAMP,它将客户端插入的时间从当前时区转换为UTC(通用标准时间)进行存储。查询时,将其转换为客户端的当前时区并返回。
DATETIME,没有任何变化,基本上是相同的输入和输出。
总结:时间戳和DATETIME都可以用来表示YYYY-MM-DD HH:MM:SS类型的日期,只是存储方式、存储范围和大小不同,没有太大区别。但是对于跨时区服务,
时间戳更合适。
时间和时间戳之间的转换:
有些应用程序生成的时间戳比这个数字多三位数,也就是毫秒。如果要转换,需要去掉后三位(标准的10位数,如果是13位数,可以除以1000),否则返回NULL。
#将时间转换为时间戳unix_timestamp
SELECT UNIX_TIMESTAMP(2019-02-22 13:25:07); #1550813107
#将时间戳转换为时间from_unixtime
SELECT FROM_UNIXTIME(1550813107); #2019-02-22 13:25:07
#NOW
SELECT UNIX_TIMESTAMP(NOW()); #1550813420
SELECT FROM_UNIXTIME(1550813420); #2019-02-22 13:30:20
mysql,以上就是本文为您收集整理的mysql最新内容,希望能帮到您!更多相关内容欢迎关注。