Partager via


STSymDifference (type de données geography)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance

Retourne un objet qui représente tous les points situés dans une instance geography particulière ou toute autre instance geography, mais pas les points situés dans les deux instances à la fois.

Syntaxe

  
.STSymDifference ( other_geography )  

Arguments

other_geography
Autre instance geography en plus de l’instance sur laquelle STSymDistance() est appelé.

Types de retour

Type de retour SQL Server : geography

Type de retour CLR : SqlGeography

Notes

Cette méthode retourne toujours une valeur Null si les SRID (identificateurs de référence spatiale) des instances geography ne correspondent pas.

SQL Server prend en charge des instances spatiales qui sont plus grandes qu'un hémisphère. Dans SQL Server, le jeu de résultats possibles sur le serveur a été étendu aux instances FullGlobe.

Le résultat peut contenir des segments d'arc de cercle uniquement si les instances d'entrée contiennent des segments d'arc de cercle.

Exemples

R. Calcul de la différence symétrique de deux polygones

L'exemple suivant utilise STSymDifference() pour calculer la différence symétrique entre deux instances Polygon.

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();  

B. Calcul de la différence symétrique avec FullGlobe

L'exemple suivant compare la différence symétrique d'un Polygon avec 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();

Voir aussi

Méthodes OGC sur des instances Geography