Name

ST_NumGeometries — Gibt die Anzahl der Punkte einer Geometrie zurück. Funktioniert für alle Geometrien.

Synopsis

integer ST_NumGeometries(geometry geom);

Beschreibung

Gibt die Anzahl der Elemente in einer Geometriesammlung (GEOMETRYCOLLECTION oder MULTI*) zurück. Für nicht leere atomare Geometrien wird 1 zurückgegeben. Für leere Geometrien wird 0 zurückgegeben.

Erweiterung: Mit 2.0.0 wurde die Unterstützung für polyedrische Oberflächen, Dreiecke und TIN eingeführt.

Änderung: 2.0.0 Bei früheren Versionen wurde NULL zurückgegeben, wenn die Geometrie nicht vom Typ GEOMETRYCOLLECTION/MULTI war. 2.0.0+ gibt nun 1 für Einzelgeometrien, wie POLYGON, LINESTRING, POINT zurück.

Diese Methode setzt die SQL/MM-Spezifikation um. SQL-MM 3: 9.1.4

Diese Funktion unterstützt 3d und lässt den Z-Index nicht fallen.

Diese Funktion unterstützt polyedrische Flächen.

Diese Funktion unterstützt Dreiecke und dreieckige unregelmäßige Netzoberflächen (TIN).

Beispiele

--Prior versions would have returned NULL for this -- in 2.0.0 this returns 1
SELECT ST_NumGeometries(ST_GeomFromText('LINESTRING(77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07)'));
--result
1

--Geometry Collection Example - multis count as one geom in a collection
SELECT ST_NumGeometries(ST_GeomFromEWKT('GEOMETRYCOLLECTION(MULTIPOINT((-2 3),(-2 2)),
LINESTRING(5 5 ,10 10),
POLYGON((-7 4.2,-7.1 5,-7.1 4.3,-7 4.2)))'));
--result
3

Siehe auch

ST_GeometryN, ST_Multi