Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:
Runtime 18 e superiores
Importante
O suporte para valores de GEOGRAFIA está disponível em Pré-visualização Pública. O suporte para valores GEOMETRY está geralmente disponível.
Recolhe um array de GEOGRAPHY valores ou GEOMETRY numa única coleção multiponto, multilinha, multipolígono ou geometria.
Syntax
st_collect ( geoArray )
Arguments
-
geoArray: Um array deGEOGRAPHYvalores, ou um array deGEOMETRYvalores.
Devoluções
Um valor do tipo GEOGRAPHY ou GEOMETRY, representando uma coleção multiponto, multilinha, multipolígono ou geometria.
Todos os NULL valores na matriz de entrada são ignorados. O tipo da saída depende dos tipos das geometrias não deNULL entrada:
- Se todos os não-elementos
NULLforem pontos, retorna um multiponto. - Se todos os não-elementos
NULLforem strings de linha, devolve uma stringa multilinha. - Se todos os não-elementos
NULLforem polígonos, retorna um multipolígono. - Caso contrário, devolve uma coleção de geometria.
Cada saída contém um elemento por elemento que não seja doNULL array.
Entradas multi-tipadas (multiponto, multilinha, multipolígono) e entradas de coleção de geometria são preservadas como elementos da coleção de geometria resultante; 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 nãoNULL de entrada.
Se o array de entrada estiver vazio ou contiver apenas NULL valores, a coleção de geometria 2D vazia é devolvida. Neste caso, o SRID da saída é determinado da seguinte forma:
- Se o tipo de elemento do array de entrada for
GEOGRAPHY(ANY), o SRID da saída é4326. - Se o tipo de elemento do array de entrada for
GEOMETRY(ANY), o SRID da saída é0. - Caso contrário, o SRID da saída corresponde ao tipo de elemento do array de entrada.
A função retorna NULL se a entrada for NULL.
Condições de erro
- Se quaisquer duas geometrias não de
NULLentrada tiverem valores SRID diferentes, a função devolve 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