Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
ST_GeometryN
ST_GeometryN gibt eine Geometrie zurück, auf die der Eingabeindex der Eingabegeometrie zeigt, wie folgt:
Wenn es sich bei der Eingabe um einen Punkt, Linestring oder ein Polygon handelt, wird die Geometrie unverändert zurückgegeben, wenn der Index gleich eins ist (1) und als null, wenn der Index ein anderer als eins (1) ist.
Wenn es sich bei der Eingabe um eine Multipoint-, Multilinestring-, Multipolygon- oder Geometriesammlung handelt, wird eine Punkt-, Linestring-, Polygon- oder Geometriesammlung zurückgegeben, auf die ein Eingabeindex zeigt.
Der Index ist eins-basiert. Der räumliche Referenzsystem-Bezeichner (SRID) des Ergebnisses entspricht dem der Eingabegeometrie. Die Dimension der zurückgegebenen Geometrie entspricht der der Eingabegeometrie.
Syntax
ST_GeometryN(geom, index)
Argumente
- geom
-
Ein Wert vom Datentyp
GEOMETRY
oder ein Ausdruck, der zu einemGEOMETRY
-Typ ausgewertet wird. - index
-
Ein Wert des Datentyps
INTEGER
, der die Position eines eins-basierten Indexes darstellt.
Rückgabetyp
GEOMETRY
Wenn geom oder index null ist, wird null zurückgegeben.
Wenn der Index außerhalb des Bereichs liegt, wird ein Fehler zurückgegeben.
Beispiele
Die folgende SQL-Anweisung gibt die Geometrien in einer Geometriesammlung zurück.
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)