| title | STSymDifference (geography Data Type) | ||
|---|---|---|---|
| description | STSymDifference (geography Data Type) | ||
| author | MladjoA | ||
| ms.author | mlandzic | ||
| ms.date | 03/14/2017 | ||
| ms.service | sql | ||
| ms.subservice | t-sql | ||
| ms.topic | reference | ||
| ms.custom |
|
||
| f1_keywords |
|
||
| helpviewer_keywords |
|
||
| dev_langs |
|
[!INCLUDE SQL Server Azure SQL Database Azure SQL Managed Instance FabricSQLDB]
Returns an object that represents all points that are either in one geography instance or another geography instance, but not those points that lie in both instances.
.STSymDifference ( other_geography )
other_geography
Is another geography instance in addition to the instance on which STSymDistance() is being invoked.
[!INCLUDEssNoVersion] return type: geography
CLR return type: SqlGeography
This method always returns null if the spatial reference identifiers (SRIDs) of the geography instances do not match.
[!INCLUDEssNoVersion] supports spatial instances that are larger than a hemisphere. In [!INCLUDEssNoVersion], the set of possible results on the server has been extended to FullGlobe instances.
The result may contain circular arc segments only if the input instances contain circular arc segments.
The following example uses STSymDifference() to compute the symmetric difference of two Polygon instances.
DECLARE @g geography;
DECLARE @h geography;
SET @g = geography::STGeomFromText('POLYGON((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))', 4326);
SET @h = geography::STGeomFromText('POLYGON((-122.351 47.656, -122.341 47.656, -122.341 47.661, -122.351 47.661, -122.351 47.656))', 4326);
SELECT @g.STSymDifference(@h).ToString(); The following example compares the symmetric difference of a Polygon with FullGlobe.
DECLARE @g geography = 'POLYGON((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))';
SELECT @g.STSymDifference('FULLGLOBE').ToString();