PostgreSQL 支持丰富的数据类型,包括内置的标准 SQL 数据类型以及一些额外的扩展类型。以下是一些常见的 PostgreSQL 数据类型:

1. 整数类型:
   - smallint:小整数,占用 2 字节。
   - integer:整数,占用 4 字节。
   - bigint:大整数,占用 8 字节。
   CREATE TABLE example (
       smallint_col smallint,
       integer_col integer,
       bigint_col bigint
   );

2. 小数和浮点类型:
   - numeric(precision, scale):可变精度的小数,用于存储精确的数值。
   - real:单精度浮点数,占用 4 字节。
   - double precision:双精度浮点数,占用 8 字节。
   CREATE TABLE example (
       numeric_col numeric(10, 2),
       real_col real,
       double_col double precision
   );

3. 字符类型:
   - character(n) 或 char(n):固定长度的字符,最多占用 n 字节。
   - character varying(n) 或 varchar(n):可变长度的字符,最多占用 n 字节。
   CREATE TABLE example (
       char_col character(10),
       varchar_col character varying(255)
   );

4. 文本类型:
   - text:可变长度的文本。
   CREATE TABLE example (
       text_col text
   );

5. 日期和时间类型:
   - date:日期。
   - time:时间。
   - timestamp:日期和时间。
   CREATE TABLE example (
       date_col date,
       time_col time,
       timestamp_col timestamp
   );

6. 布尔类型:
   - boolean:存储真或假的布尔值。
   CREATE TABLE example (
       bool_col boolean
   );

7. 数组类型:
   - integer[]:整数数组。
   CREATE TABLE example (
       int_array integer[]
   );

8. JSON 类型:
   - json:存储 JSON 数据。
   CREATE TABLE example (
       json_col json
   );

9. 枚举类型:
   - enum:表示用户定义的枚举类型。
   CREATE TYPE mood AS ENUM ('happy', 'sad', 'angry');

   CREATE TABLE example (
       mood_col mood
   );

这只是 PostgreSQL 支持的一小部分数据类型,还有其他更复杂的类型,如范围类型、几何类型等。每种数据类型都有其用途和适用场景,具体的选择取决于你的数据存储需求。


转载请注明出处:http://www.zyzy.cn/article/detail/8148/PostgreSQL