Compartilhar via


STUnion (tipo de dados geography)

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

Retorna um objeto que representa a união de uma instância de geography com outra instância de geography.

Sintaxe

  
.STUnion ( other_geography )  

Argumentos

other_geography
É outra instância de geography para formar uma união com a instância na qual STUnion() está sendo invocado.

Tipos de retorno

Tipo de retorno do SQL Server: geography

Tipo de retorno do CLR: SqlGeography

Exceções

Esse método gera uma ArgumentException se a instância contém uma borda oposta.

Comentários

Esse método sempre retorna nulo se os SRIDs (identificadores de referência espacial) das instâncias de geography não são correspondentes.

SQL Server oferece suporte a instâncias espaciais maiores do que um hemisfério. No SQL Server, o conjunto de possíveis resultados retornado no servidor foi estendido para instâncias FullGlobe.

O resultado poderá conter segmentos de arco circular apenas se as instâncias de entrada contiverem segmentos de arco circulares.

Esse método não é preciso.

Exemplos

a. Calculando a união de dois polígonos

O exemplo a seguir usa STUnion() para computar a união de duas instâncias de Polygon.

DECLARE @g geography;  
DECLARE @h geography;  
SET @g = geography::STGeomFromText('POLYGON((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))', 4326);  
SET @h = geography::STGeomFromText('POLYGON((-122.351 47.656, -122.341 47.656, -122.341 47.661, -122.351 47.661, -122.351 47.656))', 4326);  
SELECT @g.STUnion(@h).ToString();  

B. Produzindo um resultado de FullGlobe

O exemplo a seguir gera um FullGlobe quando STUnion() combina duas instâncias de Polygon.

 DECLARE @g geography = 'POLYGON ((-122.358 47.653, -122.358 47.658,-122.348 47.658, -122.348 47.649, -122.358 47.653))';  
 DECLARE @h geography = 'POLYGON ((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))';  
 SELECT @g.STUnion(@h).ToString();

C. Produzindo um espaço trigonal de uma união de um CurvePolygon e um espaço trigonal.

O exemplo a seguir gera um orifício triagonal da união de um CurvePolygon com uma instância de Polygon.

 DECLARE @g geography = 'POLYGON ((-0.5 0, 0 1, 0.5 0.5, -0.5 0))';  
 DECLARE @h geography = 'CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(0 0, 0.7 0.7, 0 1), (0 1, 0 0)))';  
 SELECT @g.STUnion(@h).ToString();

Consulte Também

Métodos do OGC em instâncias de geography