数组函数和操作符

本文介绍了 PolarDB PostgreSQL版(兼容Oracle)支持的数组操作符和数组函数。数组操作符 数组函数表展示了可以用于数组类型的函数。数组函数 第一个数组是否包含第二个数组,也就是说,出现在第二个数组中的每个元素是否等于第一个数组中...

概述

在 PolarDB PostgreSQL版(兼容Oracle)中,支持的集合类型是关联数组(以前称为Oracle中索引表)、嵌套表和varrays。使用集合的一般步骤如下:必须定义所需类型的集合。这可以在SPL程序的声明部分中完成,这将导致只能在该程序中访问的...

LIMIT

对于已初始化的动态数组,LIMIT返回由动态数组类型定义确定的最大大小限制。如果动态数组未初始化(即,它是空值数组),则将引发异常。对于关联数组或已初始化的嵌套表,LIMIT返回NULL。如果嵌套表未初始化(即,它是空值嵌套表),则将...

ST_Patch

通过pcpoint数组构造一个pcpatch对象。语法 pcpatch ST_Patch(pcpoint[]pts);参数 参数名称 描述 pts pcpoint数组。示例 INSERT INTO patches(pa)SELECT ST_Patch(pt)FROM points GROUP BY id/10;

概览

PL/SQL拥有三种集合类型:变长数组(varray,variable-size array),嵌套表(nested table)和关联数组(associative array)。它们可以被声明在全局、包或者PL/SQL块里,并拥有一系列独特的用法。例如,您可以使用集合类型构造函数初始化...

关联数组

区别于变长数组和嵌套表的形如数组的使用形式,关联数组(associative array)是一组键值对,使用形式更像是哈希表。语法 TYPE type_name IS TABLE OF value_type[NULL|NOT NULL]INDEX BY key_type ';' 示例 以下是一个关联数组的基本示例...

ST_union

将pcpatch数组聚合成单个pcpatch对象。语法 pcpatch ST_union(pcpatch[]pcs);参数 参数名称 描述 pcs pcpatch数组。示例-Compare npoints(sum(patches))to sum(npoints(patches))SELECT ST_NumPoints(ST_Union(pa))FROM patches;SELECT Sum...

ST_CostUnion

合并所有的障碍物网格开销数组,重叠的网格采用最大的开销并只保留一个,支持退化网格合并。语法 gridcost[]ST_CostUnion(gridcost[]barriers);参数 参数名称 描述 barriers 网格开销数组。描述 合并所有的障碍物网格开销数组,重叠的网格...

ST_Degeneralize

描述 将地理网格或地理网格数组剖分为高层级的网格数组。示例 select st_astext(st_degeneralize(st_gridfromtext('G01'),3));{G010,G011,G012,G013} select st_astext(st_degeneralize(array[st_gridfromtext('GZ01'),st_gridfromtext('GZ...

TABLE()

使用TABLE()函数可将数组的成员转换为一组行。特征如下:TABLE(collection_value)collection_value是一个表达式,其求值结果为集合类型的值。TABLE()函数将集合的嵌套内容扩展为表格式。可在使用表正则表达式的任意位置中使用TABLE()函数。...

ST_SetCost

为给定的障碍物网格数组赋予通行开销。语法 gridcost ST_SetCost(geomgrid[]barriers,smallint cost);参数 参数名称 描述 barriers 地理网格数组。cost 通行开销,不可通行置为-1。设置为-1时代表不可通行。描述 为给定的障碍物网格数组...

构造函数概述

构造函数包括由JSON或数组构造轨迹对象的函数及轨迹追加函数。

ST_DumpPoints

描述 path部分是一个展开输入Geometry对象后所有点的位置形成的数组,每一个点的位置就是该数组的下标。如果输入对象是一个LineString对象,会返回一个表示LineString所有点位置坐标的数组{i}。如果输入对象是一个Polygon,返回一个数组{i...

ST_makePoint

构造一个pcpoint对象。语法 pcpoint ST_makePoint(integer pcid,float8[]vals);...float8[]float8数组数组元素个数取决于schema的dimension。示例 SELECT ST_makePoint(1,ARRAY[-127,45,124.0,4.0]);010100000064CEFFFF94110000703000000400

变长数组

变长数组是一种元素数量可以从零到声明的最大长度的数组。语法 TYPE type_name IS VARRAY '(' number ')' OF datatype[NULL|NOT NULL]';' 示例 变长数组的基本示例如下所示:DECLARE TYPE varray_type IS VARRAY(10)OF INT;声明 varray ...

SFMESH

meshgeoms:所有引用到的meshgeom对象的数组,可以为引用对象。meshes:所有基于Node引用导的sfmesh的对象的数组,可以为引用对象。textures:所用的texture的对象数组。materials:所有材质的对象数组。primitives:所有的元组信息的数组...

嵌套表

嵌套表(nested table)在使用上类似于不限制最大长度的变长数组。注意事项 除了声明方式以及对最大长度的限制上有所区别,其他使用方式和变长数组一致。语法 TYPE type_name IS TABLE OF datatype[NULL|NOT NULL]';' 示例 以下是一个嵌套...

pg_extension

extconfig oid[]扩展的配置表的 regclass 项的OID数组,如果没有配置表则为 NULL。extcondition text[]扩展的配置表的 WHERE 子句过滤条件的数组,如果没有则为 NULL。说明 与大部分具有一个“namespace”列的模式不同,extnamespace 不是...

pg_type

typndims int4 对于一个数组上的域,typndims 是数组维度数(即,typbasetype 是一个数组类型)。除数组类型上的域之外的类型的此列为0。typcollation oid 指定此类型的排序规则。如果类型不支持排序规则,此列为0。一个支持排序规则的基...

ST_AsTWKB

返回给定Geometry对象的TWKB表示。...geometries 目标Geometry对象数组。uniqueIds Geometry数组对象的唯一标识。示例 SELECT ST_AsTWKB(ST_GeomFromText('POINT(116 40)',4326));st_astwkb-\xa1008082880b80a4e803(1 row)

ST_makePatch

float8[]float8数组数组元素为schema的dimension维度数的整数倍。示例 SELECT ST_asText(ST_MakePatch(1,ARRAY[-126.99,45.01,1,0,-126.98,45.02,2,0,-126.97,45.03,3,0]));{"pcid":1,"pts":[[-126.99,45.01,1,0],[-126.98,45.02,2,0],[-...

ST_Generalize

gridarray 地理网格数组。precision 聚合的层级。degenerated 是否采用退化网格。描述 将地理网格或地理网格数组聚合为低层级网格。示例 SELECT ST_AsText(ST_Generalize(ST_GridFromText('GZ0026206440'),5));st_astext-GZ00262 SELECT ST...

ST_ClusterIntersecting

给定一个Geometry对象的集合,返回由相连组件构成的结果数组。语法 geometry[]ST_ClusterIntersecting(geometry set g);参数 参数名称 描述 g 目标Geometry数据集。描述 返回一个GeometryCollections数组,其中每个GeometryCollection代表...

pg_group

本文介绍了 pg_group 视图的相关内容。简介 视图 pg_group 为向后兼容而存在:它模拟了存在于本数据库 8.1 之前版本中的一个目录。它显式所有角色的名称和未被标记 rolcanlogin 的成员,它是被用...grolist oid[]包含此组中角色ID的一个数组

ST_timeAtDistance

从起始点移动指定距离后所在的时间点。语法 timestamp[]ST_timeAtDistance(trajectory traj,float8 d);...返回的是 timestamp的数组,有可能存在多个点到起始点的距离一致。示例 Select ST_timeAtDistance(traj,100)from traj_table;

行和数比较

如果数组表达式得到一个空数组,ANY 的结果将为空值。如果左手边的表达式得到空值,ANY 通常是空值(尽管一个非严格比较操作符可能得到一个不同的结果)。另外,如果右手边的数组包含任何空值元素或者没有得到真值比较结果,ANY 的结果将是...

pg_prepared_statements

parameter_types regtype[]预备语句期望的参数类型,以一个 regtype 数组的形式显示。该数组中一个元素所对应的OID可通过将 regtype 值转换为 oid 获得。from_sql bool 如果预备语句通过SQL命令 PREPARE 创建,则为 true;如果预备语句通过...

DELETE

对于变长数组和嵌套表,PL/SQL会在 delete 操作后保留已删除元素的占位符。因此,删除的元素包含在集合的内部大小中,您可以通过为其分配有效值来恢复删除的元素。示例 以下是一个嵌套表删除元素后访问的示例。DECLARE TYPE nt_type IS ...

pg_prepared_statements

parameter_types regtype[]预备语句期望的参数类型,以一个 regtype 数组的形式。这个数组中一个元素所对应的OID可通过将 regtype 值转换为 oid 获得。from_sql bool 如果预备语句通过SQL命令 PREPARE 创建,则为 true;如果预备语句通过...

伪类型

伪类型 名字 描述 any 表示一个函数可以接受任意输入数据类型 anyelement 表示一个函数可以接受任意数据类型 anyarray 表示一个函数可以接受任意数组数据类型 anynonarray 表示一个函数可以接受任意非数组数据类型 anyenum 表示一个函数...

pg_group

本文介绍了pg_group视图包含的列信息等内容。简介 pg_group 视图为向后兼容而存在:它模拟了存在于PostgreSQL数据库8.1之前版本中的一个目录。它显式所有角色的名称和未被标记 rolcanlogin 的...grolist oid[]包含此组中角色ID的一个数组

ST_CreateRast

创建一个基于阿里云对象存储服务(OSS)、MinIO和HDFS的raster对象,或者从用户指定一维数组表示的栅格对象生成raster对象。语法 raster ST_CreateRast(cstring url);raster ST_CreateRast(cstring url,cstring storageOption);raster ST_...

集合变量的赋值

显示结果如下:nt is null.nt is not null.nt is null.DO 关联数组变量永远不会为NULL,因此将NULL赋值给关联数组变量会直接报错。DECLARE TYPE aarray_type IS TABLE OF INT INDEX BY VARCHAR(10);aarray aarray_type:=NULL;赋值为 NULL ...

pg_statistic_ext

stxkeys int2vector 一个属性编号的数组,表示哪些表列被这个统计信息对象覆盖。例如值 1 3 表示第一个和第三个表列被覆盖。stxkind char[]包含被启用统计类型代码的数组,取值范围如下:d 表示n-distinct统计信息。f 表示函数依赖统计信息...

pg_partitioned_table

partattrs int2vector 这是一个长度为 partnatts 值的数组,它指示哪些表列是分区键的组成部分。例如,值 1 3 表示第一个和第三个表列组成了分区键。这个数组中的零表示对应的分区键列是一个表达式而不是简单的列引用。partclass oidvector...

ST_HMTAsArray

将热力图瓦片转换为基于数组矩阵的表示方法,方便进行查看。语法 float8[][]ST_HMTAsArray(bytea hmt);返回值 返回一个二维的float8数组,每一个值代表热力图的统计值。参数 参数名称 描述 hmt 基于protobuf表示的HMT二进制。描述 将热力图...

ST_GeoHashFromID

参数 参数名称 描述 value 整形类型数组。描述 将一个整数类型转换为一个GeoHash字符串。整形需要通过 ST_GeoHashID 函数获得。示例 select ST_GeoHashFromID(ST_GeoHashID(ST_GeoHash(ST_GeomFromWKT('POINT(-115.172816 36.114646)'),11)...

FIRST/LAST

由于变长数组在 PolarDB 的内部实现中并不是一直保持稠密,因此 first 并不一定一直返回1,last 也不一定和 count 一直相等。当非首尾元素被 delete 时,first 和 last 不会出现变化。示例 以下是一个变长数组的 first/last 基础使用的示例...

全局集合类型

注意事项 目前,PL/SQL支持声明全局变长数组和全局嵌套表。声明它们的语法与声明局部集合类型的语法除了多加一个 CREATE 关键字以外没有区别。示例 以下是一个声明全局集合类型的示例。声明全局变长数组 CREATE TYPE v_type IS VARRAY(10)...

LIMIT

只有变长数组需要设定最大元素数。示例 以下是一个 limit 基础使用示例。DECLARE TYPE v_type IS VARRAY(3)OF INT;TYPE nt_type IS TABLE OF INT;TYPE aarray_type IS TABLE OF INT INDEX BY PLS_INTEGER;varray v_type:=v_type();nt nt_...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
产品推荐
云服务器 安全管家服务 安全中心
这些文档可能帮助您
数据传输服务 云原生数据仓库 AnalyticDB PostgreSQL版 云数据库 RDS 云解析DNS 弹性公网IP 短信服务
新人特惠 爆款特惠 最新活动 免费试用