Home >Database >Mysql Tutorial >MySql中时间类型总结_MySQL

MySql中时间类型总结_MySQL

WBOY
WBOYOriginal
2016-06-01 12:58:481167browse

最近建表要用到时间类型的数据,但对时间类型的数据一向不了解,就总结了一下。。

一、日期DATE

一个日期。支持的范围是“1000-01-01”“9999-12-31”。MySQL显示日期 “YYYY-MM-DD”格式,但允许使用字符串或数字列赋值日期

1.在一个字符串“YYYY-MM-DD”“yy-mm-dd”格式。“不严格“语法是允许任何标点符号 字符可以作为之间的日期部分的分隔符。 为,“2012-12-31”,’2012 / 12 / 31’2012 ^ 12 ^ 31,和2012 @ 12 @ 31“2012-12-31”是等价的

\

\

 

2.作为一个没有任何分隔符的字符串“yyyymmdd”格式字符串,只要是有意义的日期。对于 例子,“20070523”“070523”被解释为“2007-05-23”,但“071332”是非法的(无意义的 月日部分)则为“0000-00-00”

\

 

二、日期时间DATETIME

·日期和时间的组合。支持的范围是“1000-01-0100:00:00”“9999-12-31 23:59:59”。MySQL显示日期时间'YYYY-MM-DD HH:MM:SS'格式,但允许使用字符串或数字列赋值日期时间

· 1.允许“不严格”语法:任何标点符都可以用做日期部分或时间部分之间的间割符。例如,'98-12-31 11:30:45'、'98.12.3111+30+45'、'98/12/31 11*30*45'和'9831 11^30^45'是等价的。

\

\

 

\

2.全为数字'19970523091528'和'970523091528'被解释为'1997-05-2309:15:28',但'971122129015'是不合法的 (它有一个没有意义的分钟部分),将变为'0000-00-00 00:00:00'。

\

三、时间TIME

· 时间范围“838:59:59”“838:59:59”。格式“hh:MM:ss”(或“HHH:MM:ss”格式)。时间值的范围可以从“838:59:59”以“838:59:59”。时间可能是如此之大 因为时间型不仅可用于代表一天中的时间(必须小于24小时),但还经过两个事件之间的时间或时间间隔(这可能远大于24小时,或甚至是负的)。

缩写“1112”1112作为意义“11:12:00”(十一点后12分钟),但 MySQL它们解释为“00:11:12”(11 分钟,12秒)。同样,“12”12被解释为“00:00:12”。

\

\

l 四、时间戳TIMESTAMP

1.时间戳范围“1970-01-01 00:00:01”——“2038-01-19 03:14:07”UTC。

TIMESTAMP提供了自动 初始化和更新为当前的日期和时间。

\

\

\

TIMESTAMP和DATETIME比较:

 

这两个日期时间类型各有优点:datetime 的日期范围比较大;timestamp 所占存储空间比较小,只是 datetime 的一半。另外,timestamp 类型的列还有个特性:默认情况下,在 insert, update 数据时,timestamp 列会自动以当前时间(CURRENT_TIMESTAMP)填充/更新。“自动”的意思就是,你不去管它,MySQL 会替你去处理。

cx

五、 YEAR类型

 

YEAR类型是一个单字节类型用于表示年。

MySQL以YYYY格式检索和显示YEAR值。范围是1901到2155。

可以指定各种格式的YEAR值:

· 四位字符串,范围为'1901'到'2155'。

· 四位数字,范围为1901到2155。

· 两位字符串,范围为'00'到'99'。'00'到'69'和'70'到'99'范围的值被转换为2000到2069和1970到1999范围的YEAR值。

· 两位整数,范围为1到99。1到69 被转换为20012069

70到99范围的值被转换为1970到1999范围的YEAR值。

请注意两位整数范围与两位字符串范围稍有不同,因为你不能直接将零指定为数字并将它解释为2000。你必须将它指定为一个字符串'0'或'00'或它被解释为0000。

·函数返回的结果,其值适合YEAR上下文,例如NOW()。

非法YEAR值被转换为0000。

总的格式表:

DATATYPE VALUE

DATE

'0000-00-00'

TIME

'00:00:00'

DATETIME

'0000-00-00 00:00:00'

TIMESTAMP

'0000-00-00 00:00:00'

YEAR

0000

 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn