STCrosses (geometry Data Type)

Returns 1 if a geometry instance crosses another geometry instance. Returns 0 if it does not.


.STCrosses (other_geometry)


  • other_geometry
    Is another geometry instance to compare against the instance on which STCrosses() is invoked.

Return Types

SQL Server return type: bit

CLR return type: SqlBoolean


Two geometry instances cross if both of the following conditions are true:

  • The intersection of the two geometry instances results in a geometry whose dimensions are less than the maximum dimension of the source geometry instances.

  • The intersection set is interior to both source geometry instances.

This method always returns null if the spatial reference IDs (SRIDs) of the geometry instances do not match.


The following example uses STCrosses() to test two geometry instances to see if they cross.

DECLARE @g geometry;
DECLARE @h geometry;
SET @g = geometry::STGeomFromText('LINESTRING(0 2, 2 0)', 0);
SET @h = geometry::STGeomFromText('LINESTRING(0 0, 2 2)', 0);
SELECT @g.STCrosses(@h);

See Also

Other Resources