检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
数组 数组类型的使用 在使用数组之前,需要自定义一个数组类型。 在存储过程中紧跟AS关键字后面定义数组类型。定义方法为: TYPE array_type IS VARRAY(size) OF data_type [NOT NULL]; 其中: array_type:要定义的数组类型名。
范围类型 范围类型是表示某些元素类型(称为范围的子类型)的值范围的数据类型。例如,时间戳范围可用于表示保留会议室的时间范围。在这种情况下,数据类型为tsrange(“时间戳范围”的缩写),时间戳是子类型。子类型必须具有总体的顺序,以便很好地定义元素值是在值的范围内、之前还是之后。
数组函数 array_append(anyarray, anyelement) 描述:向数组末尾添加元素,只支持一维数组。 返回类型:anyarray 示例: 1 2 3 4 5 SELECT array_append(ARRAY[1,2], 3) AS RESULT; result
+92233720368547758.07 numeric,int和bigint类型的值可以转化为money类型。如果从real和double precision类型转换到money类型,可以先转化为numeric类型,再转化为money类型,例如: 1 SELECT '12.34'::float8::numeric::money;
几何类型 GaussDB(DWS)支持的几何类型请参见表1。最基本的类型:点,是其它类型的基础。 表1 几何类型 名字 存储空间 说明 表现形式 point 16字节 平面中的点 (x,y) lseg 32字节 (有限)线段 ((x1,y1),(x2,y2)) box 32字节 矩形
范围类型 范围类型是表示某些元素类型(称为范围的子类型)的值范围的数据类型。例如,时间戳范围可用于表示保留会议室的时间范围。在这种情况下,数据类型为tsrange(“时间戳范围”的缩写),时间戳是子类型。子类型必须具有总体的顺序,以便很好地定义元素值是在值的范围内、之前还是之后。
枚举类型 枚举(enum)类型是由一个静态、值的有序集合构成的数据类型。它们等效于很多编程语言所支持的enum类型。枚举类型可以是一周中的日期,或者一个数据的状态值集合。 枚举类型的声明 枚举类型可以使用CREATE TYPE命令创建,例如: 1 CREATE TYPE mood
日期/时间类型 GaussDB(DWS)支持的日期/时间类型请参见表1。该类型的操作符和内置函数请参见时间、日期处理函数和操作符。 如果其他的数据库时间格式和GaussDB(DWS)的时间格式不一致,可通过修改配置参数DateStyle的值来保持一致。 表1 日期/时间类型 名称 描述
位串类型 位串就是一串1和0的字符串。它们可以用于存储位掩码。 GaussDB(DWS)支持两种位串类型:bit(n)和bit varying(n),其中n是一个正整数。 bit类型的数据必须准确匹配长度n,如果存储短或者长的数据都会报错。bit varying类型的数据是最长为
XML类型 XML数据类型可以被用来存储XML(eXtensible Markup Language)数据。XML数据也可以存储为text类型,但是XML数据类型的优势在于会检查每个存储的值是不是结构良好的XML值。XML可以存储由XML标准定义的格式良好的文档,以及由XML标准
复合类型 复合类型表示行或记录的结构,它本质上就是字段名及其数据类型的列表。GaussDB(DWS)允许支持将表的列声明为复合类型。复合类型本质上和表的行类型相同,但是如果只想定义一种类型,使用CREATE TYPE可避免创建一个实际的表。单独的复合类型也是很有用的,例如可以作为函数的参数或者返回类型。
对象标识符类型 GaussDB(DWS)在内部使用对象标识符(OID)作为各种系统表的主键。系统不会给用户创建的表增加一个OID系统字段,OID类型代表一个对象标识符。 目前OID类型用一个四字节的无符号整数实现。因此不建议在创建的表中使用OID字段做主键。 表1 对象标识符类型 名称
网络地址类型 GaussDB(DWS)提供用于存储IPv4、IPv6、MAC地址的数据类型。 网络地址类型提供输入错误检查和特殊的操作和功能(请参见网络地址函数和操作符),比纯文本类型更适合存储IPv4、IPv6、MAC地址的数据类型。 表1 网络地址类型 名字 存储空间 描述 cidr
HLL中主要的数据结构,请参见表2。 表2 HyperLogLog中主要数据结构 数据类型 功能描述 hll 大小为确定的1280 bytes,可直接计算得到distinct值。 HLL的应用场景 使用hll数据类型场景 创建带有hll类型的表并向表中插入空的hll。 1 2 CREATE TABLE helloworld
RoaringBitmap类型 GaussDB(DWS)自8.1.3集群版本开始,支持RoaringBitmap数据类型,用于存储位图数据集。 roaringbitmap数据类型支持行存,列存表。 表1 RoaringBitmap类型 名字 存储容量 描述 范围 RoaringBitmap
文本搜索类型 GaussDB(DWS)提供了tsvector和tsquery两种数据类型用于支持全文检索。tsvector类型表示为文本搜索优化的文件格式,tsquery类型表示文本查询。 tsvector tsvector类型表示一个检索单元,通常是一个数据库表中的一行文本字段或者这些字段的组合。
布尔类型 表1 布尔类型 名称 描述 存储空间 取值 BOOLEAN 布尔类型 1字节。 true:真 false:假 null:未知(unknown) “真”值的有效文本值是: TRUE、't'、'true'、'y'、'yes'、'1'。 “假”值的有效文本值是: FALSE、
二进制类型 GaussDB(DWS)支持的二进制类型请参见表1。 表1 二进制类型 名称 描述 存储空间 BLOB 二进制大对象 目前BLOB支持的外部存取接口仅为: DBMS_LOB.GETLENGTH DBMS_LOB.READ DBMS_LOB.WRITE DBMS_LOB
数据类型 数值类型 货币类型 布尔类型 字符类型 二进制类型 日期/时间类型 几何类型 数组类型 枚举类型 网络地址类型 位串类型 文本搜索类型 UUID类型 JSON类型 RoaringBitmap类型 HLL数据类型 对象标识符类型 伪类型 范围类型 复合类型 列存表支持的数据类型
数组函数 array_append(anyarray, anyelement) 描述:向数组末尾添加元素,只支持一维数组。 返回类型:anyarray 示例: 1 2 3 4 5 SELECT array_append(ARRAY[1,2], 3) AS RESULT; result