数据类型优化

Mysql 数据类型优化(三)

人盡茶涼 提交于 2019-11-26 16:44:18
一、日期与时间类型 MySQL 可以使用许多类型来保存日期和时间值。 如:YEAR和DATE。MySQL能存储的最小时间粒度为秒(MariaDB支持微秒级别的时间类型)。但是MySQL也可以使用微妙级的粒度进行临时运算,我们会展示怎么绕开这种存储限制。 DATETIME 这个类型能保存大范围的值,从1001年到9999年,精度为秒。它把日期和时间封装到格式为YYYYMMMDDHHHMMSS的整数中,与时区无关。使用8个字节的存储空间。 默认情况下,MySQL以一种可排序的无歧义的格式显示 DATETIME值,例如“2015-10-24 09:57:33”.这是ANSI标准定义的日期和时间表示方法。 TIMESTAMP 就像它的名字一样,TIMESTAMP类型保存了1970年1月1日0点(格林尼治标准时间)以来的秒数,它和UNIX时间戳相同。TIMESTAMP只使用4个字节的存储空间,因此它的范围比DATETIME小的多:只能存储 1970 到 2038年。 如果在多个时区存储或访问数据,TIMESTAMP和DATETIME的行为将很不一样。 TIMESTAMP提供的值与时区有关系,后者刚保留文本表示的日期和时间。 也可以指定TIMESTAMP的 添加 与更新的行为,TIMESTAMP列的默认为NOT NULL 除了特殊的行为之外 ,通常也应该尽量用TIMESTAMP