STUnion (geometry Data Type)

Returns an object that represents the union of a geometry instance with another geometry instance.


.STUnion ( other_geometry )


  • 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


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.


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.

See Also

Other Resources

OGC Methods on Geometry Instances