Table of Contents
PostgreSQL 为用户提供了极其丰富的原生内置数据类型体系。此外,用户还可以通过 CREATE TYPE 命令随时向系统中扩展注册新的数据类型。
Table 8.1 列出了所有系统内置的通用数据类型。“别名”列中列出的大多数替代名称,是 PostgreSQL 内部出于历史兼容性保留的名称。
Table 8.1. 常用数据类型总览
| 类型名称 | 别名 | 描述说明 |
|---|---|---|
bigint | int8 | 有符号 8 字节大整数 |
bigserial | serial8 | 自增 8 字节大整数 |
bit [ ( | 定长位串 | |
bit varying [ ( | varbit [ ( | 变长位串 |
boolean | bool | 逻辑布尔值(真/假) |
box | 平面矩形框 | |
bytea | 二进制字节数组数据 | |
character [ ( | char [ ( | 定长字符串 |
character varying [ ( | varchar [ ( | 变长字符串 |
cidr | IPv4 或 IPv6 网络掩码规格地址 | |
circle | 平面几何圆 | |
date | 日历日期(年月日) | |
double precision | float8 | 双精度浮点数(8 字节) |
inet | IPv4 或 IPv6 主机及网络地址 | |
integer | int, int4 | 有符号 4 字节标准整数 |
interval [ | 时间间隔跨度 | |
json | 文本格式存储的 JSON 原始数据 | |
jsonb | 二进制分解优化存储的 JSON 高性能数据 | |
macaddr | MAC 物理网卡硬件地址(48 位) | |
money | 货币金额数值 | |
numeric [ ( | decimal [ ( | 高精度可变定点数值 |
point | 平面二维几何点 | |
real | float4 | 单精度浮点数(4 字节) |
smallint | int2 | 有符号 2 字节短整数 |
smallserial | serial2 | 自增 2 字节短整数 |
serial | serial4 | 自增 4 字节标准整数 |
text | 任意长度的纯文本长字符串 | |
time [ ( | 一天中的时间(无时区) | |
time [ ( | timetz | 包含时区的时间 |
timestamp [ ( | 日期与时间组合(无时区) | |
timestamp [ ( | timestamptz | 包含时区的日期与时间组合 |
uuid | 通用全局唯一标识符 | |
xml | XML 结构化标记文本数据 |