MySQL支持多种数据类型,主要包括以下几类:
1.数值类型:
整数类型:tinyint、smallint、mediumint、int、bigint。
区别:存储大小和范围不同。
tinyint:占用1字节的存储空间,有符号的范围是-128 ~ 127,无符号的范围是 0 ~ 255。
smallint:占用2字节,有符号范围是 -32768 ~ 32767,无符号范围是0 ~ 65535。
mediumint:占用3字节,有符号范围是-8388608 ~ 8388607,无符号范围是0 ~ 16777215。
int:占用4字节,有符号范围是-22147483648 ~ 2147483647,无符号是0 ~ 4294967295。
bigint:占用8字节,有符号的范围是-9223372036854775808 ~ 9223372036854775807, 无符号范围是0 ~ 18446744073709551615。
浮点数类型:float和double。用于存储小数。
区别:double类型比float类型有更高的精度。
float是单精度浮点数,占用4字节,精度大约是7位小数。
double是双精度浮点数,占用8字节,精度大约是15位小数。
定点数类型:decimal。用于需要精确值的数值,如货币。
举例: sql语句:column_name DECIMAL(P,D);
P表示有效数字数的精度,范围 1到65.
D表示小数点后的位数,范围0到30。
MySQ服务器托管网L要求D小于或等于P
例如:DECIMAL(19,9) 表示列可以存储9位小数的19位数。
【拓展:MySQL以二进制格式存储DECIMAL值,DECIMAL(19,9) 对于小数部分具有9位数字,对于整数部分具有10位数字,小数部分需要4个字节,整数部分需要5个字节,所以,DECIMAL(19,9)列总共需要9个字节。】
2.日期和时间类型:date、time、year、datetime、timestamp。用于表示和存储时间值。
date: 表示日期,格式‘YYYY-MM-DD’,范围是‘1000-01-01’到‘9999-12-31’,占用3字节。
time: 表示时间,格式为‘HH:MM:SS’,范围是’-838:59:59’到’838:59:59′,占用3字节。
year: 表示年份,格式’YYYY’,范围是1901到2155′,占用1字节的存储空间。
datetime:表示日期和时间,格式为:’YYYY-MM-DD HH:MM:SS’,范围是’1000-01-01 00:00:00’到’9999-12-31 23:59:59’,占用8字节。
timestamp: 表示日期时间服务器托管网,格式为:”YYYY-MM-DD HH:MM:SS’,范围是’1970-0-01 00:00:01 UTC’ 到 ‘2038-01-19 03:14:07 UTC’,占用4字节。
timestamp和datetime区别:timestamp以UTC格式存储,并会自动检索当前时区并进行转换。此外,如果存入的是NULL,timestamp会自动存储当前时间,而datetime会存储NULL。
3.字符串类型:char,varchar,binary,varbinary,blob,text,enum和set。
char:存储固定长度的非二进制字符串。若插入的值长度小于列定义的长度,MySQL会用空格填充剩余的空间。当检索这些值时,尾部的空格会被移除。
varchar: 存储可变长度的非二进制字符串,只占用实际需要的空间,加上一个或两个额外字节来记录值的长度。尾部的空格在存储和检索时都会被保留。
binary:类似于char类型,但存储的是二进制字符串。如果插入的值的长度小于列定义的长度,MySQL会用0x00(零字节)填充剩余的空间。
varbinary:类似于varchar类型,但存储的是二进制字符串。只占用实际需要的空间,加上一个或两个额外字节来记录值的长度。
blob:用于存储可变长度的大量二进制数据。有四种类型的blob:tinyblob,blob,mediumblob,longblob,存储的最大数据量不同。
tinyblob:最大长度为 255 (2^8 – 1) 字节。
blob:最大长度为 65,535 (2^16 – 1) 字节,即 64KB。
mediumblob:最大长度为 16,777,215 (2^24 – 1) 字节,即 16MB。
longblob:最大长度为 4,294,967,295 (2^32 – 1) 字节,即 4GB。
text:用于存储可变长度的大量非二进制字符串数据。有四种类型:tinytext,text,mediumtext,longtext,存储的最大数据量不同。
tinytext:最大长度为 255 (2^8 – 1) 字符。
text:最大长度为 65,535 (2^16 – 1) 字符,即64KB。
mediumtext:最大长度为 16,777,215 (2^24 – 1) 字符,即 16MB。
longtext:最大长度为 4,294,967,295 (2^32 – 1) 字符,即 4GB。
enum:存储字符串值的预定义列表中的单个值。列定义中包含合法字符串值的列表,但enum的值在内部都被存储为数字。
set:类似于enum,但set可以包含零个或多个enum列表中的值。列定义中包含合法字符串值的列表,但set的值在内部被存储为数字。
4.空间数据类型:包括geometry,point,linestring,polygon,multipoint,multilinestring,multipolygon,geometrycollection。这些类型用于存储空间数据,如地理信息,几何图形等。
geometry:是所有空间数据类型的基类,可以存储任何类型的空间数据(point,linestring,polygon等)
point:表示一个几何点,通常由经纬度作为坐标。
linestring:表示一串点列,若不闭合,则它是simple的;若闭合,则是closed的。
polygon:表示一个多边形,可以有内部空洞。
multipoint:表示多个点的集合。
multilinestring:表示多个线段的集合。
multipolygon:表示多个多边形的集合。
geometrycollection:可以存储任何类型的几何对象的集合。
以上类型都是建立在OpenGIS Geometry Model之上的,其中Geometry是顶级类,它具有所有类型都拥有的属性。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: Pytorch DistributedDataParallel(DDP)教程一:快速入门理论篇
一、 写在前面 随着深度学习技术的不断发展,模型的训练成本也越来越高。训练一个高效的通用模型,需要大量的训练数据和算力。在很多非大模型相关的常规任务上,往往也需要使用多卡来进行并行训练。在多卡训练中,最为常用的就是分布式数据并行(DistributedData…