乐闻世界logo
搜索文章和话题

What are the different data types supported by PostgreSQL?

4 个月前提问
4 个月前修改
浏览次数20

1个答案

1

PostgreSQL 支持非常丰富的数据类型,这也是它作为一个企业级数据库系统最受欢迎的特点之一。下面我会列出一些主要的数据类型,并举例说明它们的使用场景。

数值类型

  1. 整数类型

    • SMALLINT:用于存储较小的整数,范围从 -32768 到 32767。
    • INTEGER:用于存储常规大小的整数,范围从 -2147483648 到 2147483647。例如,用户的年龄或者某个计数器。
    • BIGINT:用于存储大整数,范围从 -9223372036854775808 到 9223372036854775807。适合大数据量统计,如社交媒体平台的用户数。
    • SERIAL:自增整数,常用于自动创建唯一的表行标识。
  2. 精确数值类型

    • NUMERICDECIMAL:这两种类型用于存储精确的数值,可以指定精度(总位数)和标度(小数点后的位数)。例如,金融交易中的金额计算。
  3. 浮点类型

    • REALDOUBLE PRECISION:用于存储浮点数,REAL 是单精度,而 DOUBLE PRECISION 是双精度。用于需要近似值的科学计算。

文本类型

  1. CHAR(n):固定长度字符串。如果字符串长度小于 n,则使用空格填充。
  2. VARCHAR(n):可变长度字符串,最多可以存储 n 个字符。适用于存储可能变化的数据,如用户名称。
  3. TEXT:可变长度字符串,无长度限制。适合存储大量文本,如文章内容或用户评论。

日期和时间类型

  • DATE:仅存储日期。
  • TIME:仅存储时间。
  • TIMESTAMP:存储日期和时间。常用于记录事件发生的具体时间,如日志记录。
  • INTERVAL:存储时间间隔。

布尔类型

  • BOOLEAN:存储真 (TRUE) 或假 (FALSE)。例如,用户的订阅状态或是/否选项。

枚举类型

  • ENUM:自定义类型,用来限定某个字段的可能值。例如,可以创建一个名为 moodENUM 类型,包括 happy, sad, neutral 等选项。

JSON 类型

  • JSONJSONB:用于存储 JSON 数据。JSONB 是二进制格式,存取速度更快,支持索引。

数组类型

  • PostgreSQL 支持数组数据类型,可以存储基本数据类型的数组,如整数数组、文本数组等。

网络地址类型

  • 存储 IP 地址和 MAC 地址等网络相关的数据。

几何和地理空间数据类型

  • POINT, LINE, CIRCLE 等,用于存储和查询地理空间数据。

以上各种数据类型的支持使得 PostgreSQL 非常适合处理多样化的数据需求,从传统的业务数据到现代的 JSON 文档和地理空间数据都能高效管理。

2024年7月24日 17:27 回复

你的答案