openGauss数据类型

本文详细介绍了数据库中的各种数据类型,包括数值类型(整型、浮点型等)、字符类型(定长与变长字符串)、日期类型及二进制类型等,并阐述了各自的存储特点和应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、常用数据类型
1、数值类型

(1)整型类型

  • TINYINT
    • 占用1字节
    • 对应关键字为TINYINT、INT1
  • SMALLINT
    • 占用2字节
    • 对应关键字为SMALLINT、INT2
  • INTEGER
    • 占用4字节
    • 对应关键字为INTEGER、INT4、BINARY_INTEGER
  • BIGINT
    • 占用8字节
    • 对应关键字BIGINT、INT8

(2)单精度浮点类型

  • REAL/FLOAT4
    • 占用4字节

(3)双精度浮点类型

  • FLOAT8/DOUBLE PRECISION/BINARY_DOUBLE

(4)序列整型

  • SMALLSERIAL
    • 2字节序列整型
  • SERIAL
    • 4字节序列整型
  • BIGSERIAL
    • 8字节序列整型

(5)任意精度型

  • NUMERIC[(p[,s])],DECIMAL[(p[,s])]
    • 精度p取值范围为[1,1000],标度s取值范围为[0,p]
    • p为总位数,s为小数位数
    • 用户声明精度,每四位(十进制)占用两个字节,然后在整个数据上加上八个字节的额外开销
  • NUMBER[(p[,s])]
    • NUMERIC类型的别名
2、字符类型

(1)定长字符串类型

  • CHAR(n) CHARACTER(n) NCHAR(n)
    • 定长字符串,不足补空格
    • n是指字节长度,如不带精度n,默认精度为1
    • 最大为10MB

(2)变长字符串类型

  • CLOB/TEXT
    • 存储文本大对象
    • 最大为1GB - 8203字节(即1073733621字节)
  • VARCHAR(n)
    • 用于存储变长字符串,最大为10MB
    • 对应关键字为VARCHAR/VARCHAR2/NVARCHAR2/CHARACTER VARYING
3、日期类型
  • DATE

    • 日期和时间
    • 4字节(实际存储空间大小为8字节)
  • TIME[§] [WITHOUT TIME ZONE]

    • 只用于一日内时间
    • p表示小数点后的精度,取值范围为0~6
    • 8字节
  • TIME[§] [WITH TIME ZONE]

    • 只用于一日内时间,带时区
    • p表示小数点后的精度,取值范围为0~6
    • 12字节
  • TIMESTAMP[§] [WITHOUT TIME ZONE]

    • 日期和时间
    • p表示小数点后的精度,取值范围为0~6
    • 8字节
  • TIMESTAMP[§] [WITH TIME ZONE]

    • 日期和时间,带时区。TIMESTAMP的别名为TIMESTAMPTZ
    • p表示小数点后的精度,取值范围为0~6
    • 8字节
  • SMALLDATETIME

    • 日期和时间,不带时区
    • 精确到分钟,秒位大于等于30秒进一位
    • 8字节
  • INTERVAL DAY(I) TO SECOND§

    • 时间间隔,X天X小时X分X秒
    • I:天数的精度,取值范围为0~6。为适配Oracle语法,未实现具体功能
    • p:秒数的精度,取值范围为0~6。小数末尾的零不显示
    • 16字节
  • INTERVAL[FIELDS][§]

    • 时间间隔
    • fields:可以是YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, DAY TO HOUR, DAY TO SECOND, HOUR TO MINUTE, HOUR TO SECOND, MINUTE TO SECOND
    • p:秒数的精度,取值范围为0~6,且fields为SECOND, DAY TO SECOND, HOUR TO SECOND或MINUTE TO SECOND时,参数p才有效。小数末尾的零不显示
    • 12字节
  • reltime

    • 相对时间间隔。格式为:X year Xmons X days XX:XX:XX
    • 采用儒略历计时,规定一年为365.25天,一个月为30天,计算输入值对应的相对时间间隔,输出采用POSTGRES格式
    • 4字节
4、二进制类型
  • BLOB
    • 二进制大对象(列存储不支持BLOB类型)
    • 最大为1GB - 8203字节(即1073733621字节)
  • RAW
    • 变长的十六进制类型(列存储不支持RAW类型)
    • 4字节加上实际的十六进制字符串。最大为1GB - 8203字节(即1073733621字节)
  • BYTEA
    • 变长的二进制字符串
    • 4字节加上实际的二进制字符串。最大为1GB - 8203字节(即1073733621字节)
二、其他数据类型
  • 布尔类型
  • 货币类型
  • 几何类型
  • UUID类型
  • JSON类型
  • 网络地址类型
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值