MySQL之数据类型
整型
tinyint,smallint,mediumint,int,bigint
分别占8,16,24,32,64位空间,一般选择越小越好。
浮点型
float,double浮点型。decimal高精度小数类型。cpu原生支持浮点数类型,而decimal计算需要更高代价。
字符型
char和varchar,一个定长,一个可变。
在存储和检索是会保留varchar末尾的空格,但会删除char末尾的空格。
日期和时间
datetime
保存1000到9999年,精度为秒,8字节存储空间。
默认情况MySQL以可排序的,无歧义的格式显示datetime值。
timestamp
与unix时间戳相同,保存从1970年1月1日以来的秒数,使用4个字节,最多存到2038年。
与时区有关,不同时间戳在不同时区代表的具体时间不同。
如果插入时没有指定该列的值,默认情况会设置为当前时间。
尽量使用timestamp,因为相对空间效率更高。#MySQL#
tinyint,smallint,mediumint,int,bigint
分别占8,16,24,32,64位空间,一般选择越小越好。
浮点型
float,double浮点型。decimal高精度小数类型。cpu原生支持浮点数类型,而decimal计算需要更高代价。
字符型
char和varchar,一个定长,一个可变。
在存储和检索是会保留varchar末尾的空格,但会删除char末尾的空格。
日期和时间
datetime
保存1000到9999年,精度为秒,8字节存储空间。
默认情况MySQL以可排序的,无歧义的格式显示datetime值。
timestamp
与unix时间戳相同,保存从1970年1月1日以来的秒数,使用4个字节,最多存到2038年。
与时区有关,不同时间戳在不同时区代表的具体时间不同。
如果插入时没有指定该列的值,默认情况会设置为当前时间。
尽量使用timestamp,因为相对空间效率更高。#MySQL#
查看2道真题和解析