- MySQL支持哪些数据类型
MySQL支持多种数据类型,这些类型可以大致分为三大类:数值类型、日期/时间类型和字符串类型。下面是一些常见的数据类型及其用途:
数值类型
整数类型:
TINYINT:通常占用1字节。
SMALLINT:通常占用2字节。
MEDIUMINT:通常占用3字节。
INT 或 INTEGER:通常占用4字节。
BIGINT:通常占用8字节。
这些类型可以附加 UNSIGNED 属性来表示无符号数,或者 ZEROFILL 来指定零填充。
浮点和定点类型:
FLOAT 或 REAL:单精度浮点数。
DOUBLE:双精度浮点数。
DECIMAL 或 NUMERIC:定点数,可以指定精度和小数位数。
日期/时间类型
DATE:只存储日期,格式为 'YYYY-MM-DD'。
TIME:只存储时间,格式为 'HH:MM:SS'。
DATETIME:存储日期和时间,格式为 'YYYY-MM-DD HH:MM:SS'。
TIMESTAMP:存储时间戳,可以自动更新为当前时间。
YEAR:专门用于存储年份,格式为 'YYYY' 或 'YY'。
字符串类型
CHAR:定长字符类型。
VARCHAR:变长字符类型。
BINARY 和 VARBINARY:二进制字符串类型,与 CHAR 和 VARCHAR 类似但存储二进制数据。
TEXT 和其变体 (TINYTEXT, MEDIUMTEXT, LONGTEXT):用于存储较大的文本数据。
BLOB 和其变体 (TINYBLOB, MEDIUMBLOB, LONGBLOB):用于存储较大的二进制数据。
ENUM:用于存储枚举值,即从一组预定义的值中选择。
SET:用于存储从一组预定义值中选取的多个值。
其他类型
BIT:存储位字段。
GEOMETRY:用于存储空间数据,例如点、线、多边形等。
每种数据类型都有特定的存储需求和适用场景,选择合适的数据类型对于优化数据库性能和存储效率非常重要。例如,使用更精确的类型(如 INT 而不是 BIGINT)可以节省存储空间,而使用适当的日期/时间类型可以简化查询和数据处理。
如果大家需要视频版本的讲解,欢迎关注我的B站: