Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
Databricks Runtime 18.3 e superior
Importante
Esse recurso está em Visualização Pública.
Coleta uma matriz ou GEOGRAPHYGEOMETRY valores em uma única coleção multiponto, multilinha, multipolígono ou geometria.
Syntax
st_collect ( geoArray )
Arguments
-
geoArray: uma matriz deGEOGRAPHYvalores ou uma matriz deGEOMETRYvalores.
Returns
Um valor de tipo GEOGRAPHY ou GEOMETRY, representando uma coleção multipoint, multilinestring, multipolygon ou geometry.
Todos NULL os valores na matriz de entrada são ignorados. O tipo da saída depende dos tipos das geometrias que não são deNULL entrada:
- Se todos os não
NULLelementos forem pontos, retornará um multiponto. - Se todos os não
NULLelementos forem linestrings, retornará uma multilinha. - Se todos os não
NULLelementos forem polígonos, retornará um multipolígono. - Caso contrário, retorna uma coleção de geometria.
Cada saída contém um elemento por elemento não matrizNULL .
Entradas de vários tipos (multipoint, multilinestring, multipolygon) e entradas da coleção geometry são preservadas como elementos da coleção de geometria resultante; eles não são achatados.
O valor SRID da saída é o valor SRID comum das geometrias não deNULL entrada.
A dimensão da saída é a dimensão máxima comum das geometrias que não são deNULL entrada.
Se a matriz de entrada estiver vazia ou contiver apenas NULL valores, a coleção de geometria vazia 2D será retornada. Nesse caso, o SRID da saída é determinado da seguinte maneira:
- Se o tipo de elemento da matriz de entrada for
GEOGRAPHY(ANY), o SRID da saída será4326. - Se o tipo de elemento da matriz de entrada for
GEOMETRY(ANY), o SRID da saída será0. - Caso contrário, o SRID da saída é o tipo de elemento da matriz de entrada.
A função retorna NULL se a entrada for NULL.
Condições de erro
- Se duas geometrias não de
NULLentrada tiverem valores SRID diferentes, a função retornará ST_DIFFERENT_SRID_VALUES.
Exemplos
-- 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