View a markdown version of this page

ST_GeometryN - Amazon Redshift

Amazon Redshift dejará de admitir la creación de UDF de Python después del 30 de junio de 2026. Empezaremos a aplicarlo por fases. Para obtener más información sobre los detalles del fin de vida de Python y las opciones de migración, consulte la entrada del blog que se publicó el 30 de junio de 2025.

ST_GeometryN

ST_Geometryn devuelve una geometría a la que apunta el índice de entrada de la geometría de entrada, de la siguiente manera:

  • Si la entrada es un punto, una linestring o un polígono, se devuelve una geometría tal cual si el índice es igual a uno (1) y null si el índice es distinto de uno (1).

  • Si la entrada es un multipunto, multilinestring, multipolígono o colección de geometría, se devuelve un punto, linestring, polígono o colección de geometría a la que apunta un índice de entrada.

El índice tiene base uno. El identificador del sistema de referencia espacial (SRID) del resultado es el mismo que el de la geometría de entrada. La dimensión de la geometría devuelta es la misma que la de la geometría de entrada.

Sintaxis

ST_GeometryN(geom, index)

Argumentos

geom

Un valor de tipo de datos GEOMETRY o una expresión que toma el valor de un tipo GEOMETRY.

Índice de

Un valor de tipo de datos INTEGER que representa la posición de un índice con base 1.

Tipo de retorno

GEOMETRY

Si geom o index es null, entonces se devuelve el valor null.

Si el índice está fuera de rango, se devuelve un error.

Ejemplos

El siguiente SQL devuelve las geometrías en una colección de geometría.

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)