ST_MakeGeomColl — Constructs a GeometryCollection object from a set of Geometries.
PostgreSQL
geometry ST_MakeGeomColl(
bytea
Geometry_Array)
;
geometry ST_MakeGeomColl(
bytea
Geometry_Aggregate)
;
H2
geometry ST_MakeGeomColl(
bytea
Geometry_Array)
;
geometry ST_MakeGeomCollAgg(
bytea
Geometry_Aggregate)
;
Constructs a GeometryCollection object from a set of Geometries. The method can take as input argument either a Geometry Array or a set of Geometries.
2D | 3D | M |
---|---|---|
OGC SFS for SQL. 1.1 (1999) | OGC SFS for SQL. 1.1.0 (2005) | OGC SFS for SQL. 1.2.0 (2006) | SQL-MM Part 3 |
---|---|---|---|
- | - | - | - |
PostgreSQL
select asewkt(MakeGeomColl(Array[ST_MakePoint(0, 0), ST_MakePoint(10, 10),ST_MakePoint(15, 10)])); --Result asewkt ---------------------------------------------------------------- GEOMETRYCOLLECTION (POINT (0 0), POINT (10 10), POINT (15 10)) (1 row) SELECT asewkt(ST_MakeGeomColl( Array[ ST_GeomFromText('POINT(0 0 10)'), ST_GeomFromText('LINESTRING(0 0 10, 10 10 10)'), ST_GeomFromText('POLYGON ((2 1, 2 5, 6 5, 6 1, 2 1))') ])); --Result asewkt ------------------------------------------------------------------------ GEOMETRYCOLLECTION (POINT (0 0 10), LINESTRING (0 0 10, 10 10 10), POLYGON ((2 1 0, 2 5 0, 6 5 0, 6 1 0, 2 1 0))) (1 row)
H2
SELECT ST_AsText(ST_MakeGeomColl(st_accumagg(geom))) as geomcollect from (select array_get( ( st_geomfromtext('POINT(0 0)'), st_geomfromtext('POINT(10 10)'), st_geomfromtext('POINT(15 15)') ),x)::binary as geom from (select x from system_range(1,3) as foo) as table); --Result GEOMCOLLECT GEOMETRYCOLLECTION (POINT (0 0), POINT (10 10), POINT (15 15))
create table "points"(id serial PRIMARY KEY);
SELECT AddGeometryColumn ('points','GEOM',25830,'POINT',2);
INSERT INTO "points" ("GEOM") VALUES (ST_GeomfromEWKT('SRID=25830;POINT (1 1)'));
INSERT INTO "points" ("GEOM") VALUES (ST_GeomfromEWKT('SRID=25830;POINT (1 7)'));
INSERT INTO "points" ("GEOM") VALUES (ST_GeomfromEWKT('SRID=25830;POINT (6 7)'));
--PostgreSQL
SELECT ST_AsEWKT(ST_MakeGeomColl("points"."GEOM")) from "points";
--H2
SELECT ST_AsEWKT(ST_MakeGeomCollAgg("points"."GEOM")) from "points";
--Result
SRID=25830;GEOMETRYCOLLECTION (POINT (1 1), POINT (1 7), POINT (6 7))