Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks Runtime 18.3 und höher
Important
Dieses Feature befindet sich in der Public Preview.
Sammelt ein Array von GEOGRAPHY oder Werten in einer einzelnen Multipoint-, Multilinestring-, Multipolygon- oder GEOMETRY Geometrieauflistung.
Syntax
st_collect ( geoArray )
Arguments
-
geoArray: Ein Array vonGEOGRAPHYWerten oder ein Array vonGEOMETRYWerten.
Rückkehr
Ein Wert vom Typ GEOGRAPHY oder GEOMETRY, der eine Multipoint-, Multilinestring-, Multipolygon- oder Geometrieauflistung darstellt.
Alle NULL Werte im Eingabearray werden ignoriert. Der Typ der Ausgabe hängt von den Typen der NichteingabegeometrienNULL ab:
- Wenn alle Nicht-Elemente
NULLPunkte sind, wird ein Multipoint zurückgegeben. - Wenn alle Nicht-Elemente
NULLLinienzeichenfolgen sind, wird eine mehrzeilige Zeichenfolge zurückgegeben. - Wenn alle Nicht-Elemente
NULLPolygone sind, wird ein Multipolygon zurückgegeben. - Andernfalls wird eine Geometrieauflistung zurückgegeben.
Jede Ausgabe enthält ein Element pro ArrayelementNULL .
Eingaben mit mehreren Typen (Multipoint, Multilinestring, Multipolygon) und Geometriesammlungseingaben werden als Elemente der resultierenden Geometriesammlung beibehalten; sie werden nicht abgeflacht.
Der SRID-Wert der Ausgabe ist der gemeinsame SRID-Wert der NichteingabegeometrienNULL .
Die Dimension der Ausgabe ist die maximale gemeinsame Dimension der NichteingabegeometrienNULL .
Wenn das Eingabearray leer ist oder nur NULL Werte enthält, wird die leere 2D-Geometrieauflistung zurückgegeben. In diesem Fall wird die SRID der Ausgabe wie folgt bestimmt:
- Wenn der Elementtyp des Eingabearrays lautet, lautet
GEOGRAPHY(ANY)4326die SRID der Ausgabe . - Wenn der Elementtyp des Eingabearrays lautet, lautet
GEOMETRY(ANY)0die SRID der Ausgabe . - Andernfalls entspricht die SRID der Ausgabe dem Elementtyp des Eingabearrays.
Die Funktion gibt zurück NULL , wenn die Eingabe lautet NULL.
Fehlerbedingungen
- Wenn zwei Nichteingabegeometrien unterschiedliche SRID-Werte
NULLaufweisen, gibt die Funktion ST_DIFFERENT_SRID_VALUES zurück.
Beispiele
-- Collects an array of points into a multipoint.
> SELECT st_astext(st_collect(array(st_geomfromtext('POINT(1 2)'),st_geomfromtext('POINT(3 4)'))));
MULTIPOINT((1 2),(3 4))
-- Collects an array of polygons into a multipolygon.
> SELECT st_astext(st_collect(array(st_geomfromtext('POLYGON((0 0,10 0,10 10,0 10,0 0))'))));
MULTIPOLYGON(((0 0,10 0,10 10,0 10,0 0)))
-- Collects an array of mixed geometry kinds into a geometry collection.
> SELECT st_astext(st_collect(array(st_geomfromtext('POLYGON((0 0,10 0,10 10,0 10,0 0))'),st_geomfromtext('LINESTRING(1 2,3 4)'))));
GEOMETRYCOLLECTION(POLYGON((0 0,10 0,10 10,0 10,0 0)),LINESTRING(1 2,3 4))
-- Returns the 2D empty geometry collection for an empty input array.
> SELECT st_astext(st_collect(array()));
GEOMETRYCOLLECTION EMPTY
-- Returns NULL for a NULL input.
> SELECT st_collect(NULL);
NULL