Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
ST_GeometryN
ST_GeometryN renvoie une géométrie pointée par l’index en entrée de la géométrie en entrée, comme suit :
Si l’entrée est un point, une linestring ou un polygone, une géométrie est renvoyée telle qu’elle est si l’index est égal à un (1), et null si l’index est différent d’un (1).
Si l’entrée est une collection multipoint, multilinestring, multipolygone ou de géométries, une collection de points, linestrings, polygones ou géométries est renvoyée telle que pointée par un index en entrée.
L’index est basé sur un. L’identificateur du système de référence spatiale (SRID) du résultat est identique à celui de la géométrie en entrée. La dimension de la géométrie renvoyée est identique à celle de la géométrie en entrée.
Syntaxe
ST_GeometryN(geom, index)
Arguments
- geom
-
Valeur de type de données
GEOMETRY
ou expression qui est évaluée sur un typeGEOMETRY
. - index
-
Valeur de type de données
INTEGER
qui représente la position d’un index basé sur un.
Type de retour
GEOMETRY
Si geom ou index est null, null est renvoyé.
Si l’index est hors de portée, une erreur est renvoyée.
Exemples
Le SQL suivant renvoie les géométries d’une collection de géométries.
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)