`

MySQL:MySQL日期数据类型、MySQL时间类型使用总结

阅读更多

 

 

日志

 
 
字号:     

MySQL:MySQL日期数据类型、MySQL时间类型使用总结

MySQL 日期类型:日期格式、所占存储空间、日期范围 比较。

 日期类型        存储空间       日期格式                 日期范围
------------  ---------   --------------------- -----------------------------------------
 datetime       8 bytes   YYYY-MM-DD HH:MM:SS   1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
 timestamp      4 bytes   YYYY-MM-DD HH:MM:SS   1970-01-01 00:00:01 ~ 2038
 date           3 bytes   YYYY-MM-DD            1000-01-01          ~ 9999-12-31
 year           1 bytes   YYYY                  1901                ~ 2155

在 MySQL 中创建表时,对照上面的表格,很容易就能选择到合适自己的数据类型。不过到底是选择 datetime 还是 timestamp,可能会有点犯难。这两个日期时间类型各有优点:datetime 的日期范围比较大;timestamp 所占存储空间比较小,只是 datetime 的一半。

另外,timestamp 类型的列还有个特性:默认情况下,在 insert, update 数据时,timestamp 列会自动以当前时间(CURRENT_TIMESTAMP)填充/更新。“自动”的意思就是,你不去管它,MySQL 会替你去处理。

一般情况下,我倾向于使用 datetime 日期类型。

MySQL 时间类型:时间格式、所占存储空间、时间范围。

 时间类型        存储空间      时间格式                 时间范围
------------  ---------   --------------------- -----------------------------------------
 time           3 bytes   HH:MM:SS              -838:59:59          ~ 838:59:59

time 时间范围居然有这么大的范围,特别是 time 可以取负值,有点奇怪。后来,看了 MySQL 手册才知道这是为了满足两个日期时间相减才这样设计的。

select timediff('2000:01:31 23:59:59', '2000:01:01 00:00:00');  --  743:59:59
select timediff('2000:01:01 00:00:00', '2000:01:31 23:59:59');  -- -743:59:59
select timediff('23:59:59', '12:00:00');                        --  11:59:59

注意,timediff 的两个参数只能是 datetime/timestamp, time 类型的,并且这两个参数类型要相同。即:datetime/timestamp 和 datetime/timestamp 比较;time 和 time 相比较。

虽然 MySQL 中的日期时间类型比较丰富,但遗憾的是,目前(2008-08-08)这些日期时间类型只能支持到秒级别,不支持毫秒、微秒。也没有产生毫秒的函数。

《MySQL:MySQL日期数据类型、MySQL时间类型使用总结》适用于 MySQL 5.X 及以上版本。

分享到:
评论

相关推荐

    MySQL日期数据类型、MySQL时间类型使用总结

    ### MySQL日期数据类型与时间类型使用总结 在MySQL数据库中,日期和时间是十分重要的数据类型,被广泛应用于各种业务场景之中。为了更好地理解和运用这些数据类型,本篇将对MySQL中的日期数据类型和时间类型进行...

    MySQL日期数据类型、MySQL时间类型使用总结.doc

    MySQL日期数据类型、MySQL时间类型使用总结.doc

    MySQL日期数据类型、MySQL时间类型使用总结.docx

    MySQL数据库在处理日期和时间数据时提供了多种数据类型,包括日期类型和时间...在MySQL 5.x及以上版本中,这些日期时间类型仅支持到秒级别,不包含毫秒或微秒。如果你需要更高的精度,可能需要在应用程序层面进行处理。

    Java数据类型和MySql数据类型对应一览

    在 MySql 中,日期时间类型对应的是 DATE、TIME、DATETIME、TIMESTAMP 等类型。其中,DATE 类型用于存储日期,TIME 类型用于存储时间,DATETIME 类型用于存储日期和时间,TIMESTAMP 类型用于存储时间戳。 布尔类型 ...

    2011年MySQL日期数据类型、MySQL时间类型使用总结.doc

    MySQL数据库在处理日期和时间数据时提供了多种数据类型,包括日期类型和时间类型,每种类型都有其特定的格式、存储空间占用以及适用范围。在选择适合的数据类型时,需要根据实际需求进行权衡。 首先,让我们来看看...

    MySQL学习笔记:MySQL安装,MySQL数据类型,MySQL事务,MySQL函数

    MySQL 数据库支持多种数据类型,包括数字、字符串、日期和时间、枚举、集合等。 MySQL 事务 MySQL 事务是指一组操作的集合,保证了数据库的完整性和一致性。事务可以分为四个阶段:开始事务、执行事务、提交事务...

    MySQL数据类型全掌握

    ### MySQL数据类型全掌握 #### 一、概述 在数据库设计和开发过程中,正确选择数据类型对于确保数据的准确性和优化存储空间至关重要。MySQL作为一款广泛使用的开源关系型数据库管理系统,提供了丰富的数据类型来...

    mysql数据类型转换

    - **日期时间类型** (`DATETIME`):表示日期和时间的组合值。 - **浮点数类型** (`DECIMAL`):表示固定精度的小数。 - **整数类型** (`SIGNED`):表示有符号的整数值。 - **无符号整数类型** (`UNSIGNED`):表示无...

    MySQL:数据类型与表设计

    MySQL:数据类型与表设计

    Java数据类型和MySql数据类型对应表

    MySql 提供了多种数据类型,包括整数类型、浮点数类型、字符串类型、日期时间类型、枚举类型等。每种数据类型都有其特点和用法。 在 MySql 中,整数类型包括 TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT 等。这些...

    Java中数据类型和MYSQL中数据类型的对比

    2. 日期和时间类型:MySQL 的日期和时间类型包括 DATETIME、DATE、TIMESTAMP、TIME 和 YEAR。DATETIME 可以存储日期和时间,而 DATE 和 TIME 分别只存储日期和时间部分。TIMESTAMP 类型特别之处在于它可以自动更新,...

    Mysql、orcale 中的数据类型与java中的数据类型对应表.pdf

    在 MySQL 中,数据类型也可以分为数值类型、日期时间类型、字符串类型等。数值类型包括整形、浮点型和定点型等,其中整形包括 tinyint、smallint、mediumint、int 和 bigint 等;浮点型包括 float 和 double 等。...

    MYSQL基础:数据类型.docx

    MySQL 支持的各种数据类型可以分为数值类型、字符串类型、日期和时间类型、二进制类型和枚举和集合类型等。 数值类型 MySQL 支持的数值类型包括整数类型、浮点数类型和定点数类型。 * 整数类型:包括 TINYINT、...

    MySQL数据库:表的字段类型.pptx

    理解 —— MySQL支持的数据类型; 表的字段类型 MySQL支持的类型 MySQL支持多种类型,大致可以分为三类: 数值类型 日期和时间类型 字符串(字符)类型。 数值类型 表的字段类型 MySQL支持所有标准SQL数值数据类型。 ...

    mysql时间类型对应的java类型1

    本文将深入探讨MySQL数据库中的时间类型以及它们在Java编程语言中相对应的数据类型,以及如何在两者之间进行转换。 MySQL数据库提供了多种时间类型来处理日期和时间数据: 1. **DATE**:这个类型仅存储日期,格式...

    MySQL所有数据类型.pdf

    MySQL 的日期和时间类型用于存储日期和时间信息,包括日期、时间、日期时间和时间戳等。 ### DATE 类型 DATE 类型用于存储日期信息,占用 3 字节,范围从 1000-01-01 到 9999-12-31,格式为 YYYY-MM-DD。 ### ...

    mysql数据类型详解.pdf

    总之,MySQL数据类型的灵活使用对于数据库性能优化至关重要,同时也关系到数据完整性和安全性。在实际应用中,数据库管理员和开发者应当根据实际需求和数据特性,选择最合适的数据类型,以达到存储高效和查询快速的...

    MySQL数据类型总结

    MySQL中的数据类型有很多,主要分为三类:数值类型、字符串类型、日期时间类型。 其中三类主要数据类型整理如下:

    MySQL数据类型详解

    MySQL数据类型详解 在数据库管理系统中,数据类型是用来定义列中数据可以取值的类型和范围。在MySQL中定义数据类型具有重要的作用: 1. 对数据进行分类:数据类型有助于对数据进行归类处理,例如整数、字符串、...

Global site tag (gtag.js) - Google Analytics