分类 | 数据类型 | 取值范围 | 存储 | 备注 |
---|---|---|---|---|
数字类型 | serial | 0 到 2,147,483,647 | 4个字节 | 自增整数 |
serial8 | 0 到 9,223,372,036,854,775,807 | 8个字节 | 自增整数 | |
bigserial | -9,223,372,036,854,775,807 到 9,223,372,036,854,775,807 | 8个字节 | 生成的自增数都是正数 | |
integer(int) | -(2^31-1) 到 (2^31-1) | 4个字节 | 10位精度范围 | |
int8 | -(2^63-1) 到 (2^63-1) | 8个字节 | 19位精度范围 | |
bigint | -(2^63-1) 到 (2^63-1) | 8个字节 | 8个字节的整数 | |
smallint | -32767(-(2^15-1) 到 32767 (2^15-1)) | 2字节 | 只存储整数 | |
float | 17个有效位双精度浮点数 | 8个字节 | f(n)n必须是1-14之间的整数 | |
smallfloat | 9个有效数字的单精度浮点数, | 4个字节 | smallfloat转换为decimal值产生9位精度 | |
double precision | 同float | |||
real | 同smallfloat | |||
money | 存储最多32个有效数字的定点数 | 16字节 | money(p,s)其中p是有效数字总数,s是小数位数 | |
decimal | 10^-130 到 10^124 | 默认10字节,根据精度改变 | 格式:decimal(p)浮点和decimal(p,s)定点 | |
numeric | 与decimal相同 | |||
日期时间类型 | date | 自1899年12月31日以来的日期 | 4字节 | 时间精度为日 |
datetime | 自1899年12月31日以来的时间 | 8字节 | 时间精度为毫秒 | |
interval | year-month时间间隔和day-time时间间隔 | 4字节 | 可精确到秒 | |
字符串类型 | boolean | t’/‘f’或者’T’/'F’以及null | 1字节 | |
char | 1 到 32767字节 | n字节 | 字符串数据 | |
varchar | 1 到 255字节 | m字节 | VARCHAR(m,r)其中m是列的最大大小,r是保留最小字节数 | |
lvarchar | 1 到 32739字节 | m字节 | 缺省大小为2048个字节, (m)最大为 32,739 字节 |
|
Unicode字符串类型 | nchar | 1-32767 | n字节 | 字符串数据 |
nvarchar | 1-255 | m字节 | NVARCHAR(m,r)其中m是列的最大大小,r是保留最小字节数 | |
简单大对象类型 | text | 2^31-1 (2,147,483,647) 个字节 | 2T字节 | 根据字符串,存储大小可能小于 2,147,483,647 字节 |
byte | 1 到 2^31 | 2T字节 | 存储二进制字节流数据,如电子表格,强制转换可将byte转换为blob | |
智能大对象类型 | clob | 1 到 4T字节 | 4T字节 | 存储文本数据,包括格式化的信息 |
blob | 1 到 4T字节 | 4T字节 | 存储二进制数据,如数字化的图片和音频 | |
集合类型 | set | 存储唯一元素的无序集合 | SET{Oakland, Menlo Park, Portland, Lenexa} | |
multiset | 存储无序的相同元素类型,元素值可重复 | MULTISET(element_type NOT NULL) | ||
list | 存储相同sql数据类型的非null有序集合 | LIST{blue, green, yellow} | ||
row(命名) | 数据类型的字段可以是任何内置数据类型 | CREATE ROW TYPE name_t (lname CHAR(15), initial CHAR(1), fname CHAR(15)) |
||
row(未命名) | 数据类型的字段可以是任何内置数据类型 | ROW (x integer, z real, y varchar(20)) |