ST_GeometryN - Amazon Redshift

ST_GeometryN

ST_GeometryN 返回由输入几何体的输入索引指向的几何体,如下所示:

  • 当输入是点、线串或多边形时,如果索引等于一 (1),则按原样返回几何体;如果索引不是一 (1),则返回 null。

  • 如果输入是多点、多线串、多边形或几何体集合,则返回由输入索引指向的点、线串、多边形或几何体集合。

索引是从 1 开始的。结果的空间参考系统标识符 (SRID) 与输入几何体的相同。返回的几何体的维度与输入几何体的维度相同。

语法

ST_GeometryN(geom, index)

参数

geom

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。

index

一个 INTEGER 数据类型的值,表示从 1 开始的索引的位置。

返回类型

GEOMETRY

如果 geomindex 为 null,则返回 null。

如果 index 超出范围,则返回一个错误。

示例

以下 SQL 返回几何体集合中的几何体。

WITH tmp1(idx) AS (SELECT 1 UNION SELECT 2), tmp2(g) AS (SELECT ST_GeomFromText('GEOMETRYCOLLECTION(POLYGON((0 0,10 0,0 10,0 0)),LINESTRING(20 10,20 0,10 0))')) SELECT idx, ST_AsEWKT(ST_GeometryN(g, idx)) FROM tmp1, tmp2 ORDER BY idx;
idx | st_asewkt -----+------------------------------ 1 | POLYGON((0 0,10 0,0 10,0 0)) 2 | LINESTRING(20 10,20 0,10 0)