Definition
ST_NumGeometries akzeptiert eine Geometriesammlung und gibt die Anzahl der in der Sammlung enthaltenen Geometrien zurück.
Syntax
Oracle
sde.st_numgeometries (multipoint1 sde.st_geometry) sde.st_numgeometries (multiline1 sde.st_geometry) sde.st_numgeometries (multipolygon1 sde.st_geometry)
PostgreSQL
sde.st_numgeometries (geometry1 sde.st_geomcollection)
SQLite
st_numgeometries (geometry1 geometryblob)
Rückgabetyp
Ganzzahl
Beispiel
Im folgenden Beispiel wird eine Tabelle mit dem Namen "sample_numgeom" erstellt. In diese Tabelle werden ein Multipolygon und ein Multipoint eingefügt. In der SELECT-Anweisung dient die Funktion "ST_NumGeometries" zur Bestimmung der Anzahl der Geometrien (oder Features) in jeder Geometrie.
Oracle
CREATE TABLE sample_numgeom (
id integer,
geometry sde.st_geometry
);
INSERT INTO SAMPLE_NUMGEOM VALUES (
1,
sde.st_multipolygon ('multipolygon (((3 3, 4 6, 5 3, 3 3), (8 24, 9 25, 1 28, 8 24), (13 33, 7 36, 1 40, 10 43, 13 33)))', 4326)
);
INSERT INTO SAMPLE_NUMGEOM VALUES (
2,
sde.st_multipoint ('multipoint (1 2, 4 3, 5 6, 7 6, 8 8)', 4326)
);
SELECT id, sde.st_numgeometries (geometry) NUM_GEOMS_IN_COLL
FROM SAMPLE_NUMGEOM;
ID NUM_GEOMS_IN_COLL
1 3
2 5
PostgreSQL
CREATE TABLE sample_numgeom (
id integer,
geometry sde.st_geometry
);
INSERT INTO sample_numgeom VALUES (
1,
sde.st_multipolygon ('multipolygon (((3 3, 4 6, 5 3, 3 3), (8 24, 9 25, 1 28, 8 24), (13 33, 7 36, 1 40, 10 43, 13 33)))', 4326)
);
INSERT INTO sample_numgeom VALUES (
2,
sde.st_multipoint ('multipoint (1 2, 4 3, 5 6, 7 6, 8 8)', 4326)
);
SELECT id, sde.st_numgeometries (geometry)
AS "number of geometries"
FROM sample_numgeom;
id number of geometries
1 3
2 5
SQLite
CREATE TABLE sample_numgeom (
id integer
);
SELECT AddGeometryColumn(
NULL,
'sample_numgeom',
'geometry',
4326,
'geometry',
'xy',
'null'
);
INSERT INTO sample_numgeom VALUES (
1,
st_multipolygon ('multipolygon (((3 3, 4 6, 5 3, 3 3), (8 24, 9 25, 1 28, 8 24), (13 33, 7 36, 1 40, 10 43, 13 33)))', 4326)
);
INSERT INTO sample_numgeom VALUES (
2,
st_multipoint ('multipoint (1 2, 4 3, 5 6, 7 6, 8 8)', 4326)
);
SELECT id, st_numgeometries (geometry)
AS "number of geometries"
FROM sample_numgeom;
id number of geometries
1 3
2 5