STUnion(geometry 数据类型)

适用于: SQL Server Azure SQL 数据库 Azure SQL 托管实例

返回一个对象,它表示一个 geometry 实例与另一个 geometry 实例的并集。

语法

  
.STUnion ( other_geometry )  

参数

other_geometry
与调用 STUnion() 的实例形成并集的另一个 geometry 实例。

返回类型

SQL Server 返回类型:geometry

CLR 返回类型:SqlGeometry

注解

如果 geometry 实例的空间引用 ID (SRID) 不匹配,则此方法始终返回 null。 只有在输入实例包含圆弧线段时,结果才会包含圆弧线段。

示例

A. 计算两个 Polygon 实例的并集

以下示例使用 STUnion() 计算两个 Polygon 实例的并集。

DECLARE @g geometry;  
DECLARE @h geometry;  
SET @g = geometry::STGeomFromText('POLYGON((0 0, 0 2, 2 2, 2 0, 0 0))', 0);  
SET @h = geometry::STGeomFromText('POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))', 0);  
SELECT @g.STUnion(@h).ToString();  

B. 计算 Polygon 实例与 CurvePolygon 实例的并集

以下示例返回一个包含圆弧段的 GeometryCollection 实例。

 DECLARE @g geometry = 'CURVEPOLYGON(CIRCULARSTRING(0 -4, 4 0, 0 4, -4 0, 0 -4))';  
 DECLARE @h geometry = 'POLYGON((5 -1, 5 -3, 7 -3, 7 -1, 5 -1))';  
 SELECT @g.STUnion(@h).ToString();

由于调用 STUnion() 的实例包含圆弧段,因此 STUnion() 返回包含圆弧段的结果。

另请参阅

几何图形实例上的 OGC 方法