PostgreSQL支持多种数据类型,以下是一些常见的数据类型:
- 数值类型:
- 整数类型:包括smallint、integer和bigint,用于表示不同范围的整数值。
- 浮点类型:包括real和double precision,用于表示实数。
- 定点类型:包括numeric和decimal,用于表示精确的数值,可以指定精度和小数位数。
- 字符串类型:
- char:固定长度的字符串类型。
- varchar:可变长度的字符串类型,长度可变,但需要指定最大长度。
- text:可变长度的字符串类型,长度可变,且不需要指定最大长度。
- 日期和时间类型:
- date:表示日期值,格式为YYYY-MM-DD。
- time:表示时间值,格式为HH:MM:SS。
- timestamp:表示日期和时间值,格式为YYYY-MM-DD HH:MM:SS。
- interval:表示时间间隔值,可以表示年、月、日、时、分、秒等间隔。
- 二进制数据类型:
- bytea:表示二进制数据,以字节为单位存储。
- bit:表示二进制数据,以位为单位存储。
- 其他数据类型:
- boolean:表示布尔值,包括true和false。
- uuid:表示通用唯一标识符(UUID),用于存储128位的唯一标识符。
- json:表示JSON数据类型,用于存储JSON格式的文本数据。
- xml:表示XML数据类型,用于存储XML格式的文本数据。
- point:表示点坐标数据类型,用于存储二维空间中的点坐标。
- line:表示线段数据类型,用于存储二维空间中的线段。
- lseg:表示线段数据类型,用于存储二维空间中的线段。
- circle:表示圆形数据类型,用于存储二维空间中的圆形。
- box:表示矩形数据类型,用于存储二维空间中的矩形。
- path:表示路径数据类型,用于存储二维空间中的路径。
- polygon:表示多边形数据类型,用于存储二维空间中的多边形。
- array:表示数组数据类型,用于存储同一数据类型的有序集合。
- jsonb:表示JSONB数据类型,用于存储二进制格式的JSON数据。
除了以上列出的数据类型外,PostgreSQL还支持其他一些数据类型,如序列(sequence)、表(table)、索引(index)等。