STIntersection (geometry Data Type)

THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Returns an object that represents the points where a geometry instance intersects another geometry instance.

||
|-|
|Applies to: SQL Server ( SQL Server 2008 through current version), Azure SQL Database .|

Syntax


.STIntersection ( other_geometry )  

Arguments

other_geometry
Is another geometry instance to compare with the instance on which STIntersection() is being invoked, to determine where they intersect.

Return Types

SQL Server return type: geometry

CLR return type: SqlGeometry

Remarks

STIntersection() 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 them.

Examples

A. Using STIntersection() on Polygon instances

The following example uses STIntersection() to compute the intersection of two polygons.

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.STIntersection(@h).ToString();  

B. Using STIntersection() with CurvePolygon instance

The following example returns an 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 ((1 -1, 5 -1, 5 3, 1 3, 1 -1))';

SELECT @h.STIntersection(@g).ToString();

See Also

OGC Methods on Geometry Instances