STUnion (geometry Data Type)
Returns an object that represents the union of a geometry instance with another geometry instance.
Syntax
.STUnion ( other_geometry )
Arguments
- other_geometry
Is another geometry instance to form a union with the instance on which STUnion() is being invoked.
Return Types
SQL Server return type: geometry
CLR return type: SqlGeometry
Remarks
This method always returns null if the spatial reference IDs (SRIDs) of the geometry instances do not match. The result may contain circular arc segments only if the input instances contain circular arc segments.
Examples
A. Computing the union of two Polygon instances
The following example uses STUnion() to compute the union of two Polygon instances.
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. Computing the union of a Polygon instance with a CurvePolygon instance
The following example returns a GeometryCollection instance that contains a circular arc segment.
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() returns a result that contains a circular arc segment because the instance that invoked STUnion() contains a circular arc segment.