STUnion (type de données geography)
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance
Retourne un objet qui représente l’union entre une instance geography et une autre instance geography.
Syntaxe
.STUnion ( other_geography )
Arguments
other_geography
Autre instance geography permettant de former une union avec l’instance sur laquelle STUnion() est appelé.
Types de retour
Type de retour SQL Server : geography
Type de retour CLR : SqlGeography
Exceptions
Cette méthode lève ArgumentException si l’instance contient une arête antipodale.
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 retourné 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.
Cette méthode n'est pas précise.
Exemples
R. Calcul de l'union de deux polygones
L'exemple suivant utilise STUnion()
pour calculer l'union de 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.STUnion(@h).ToString();
B. Génération d'un résultat FullGlobe
L'exemple suivant produit un FullGlobe
lorsque STUnion()
combine deux instances Polygon
.
DECLARE @g geography = 'POLYGON ((-122.358 47.653, -122.358 47.658,-122.348 47.658, -122.348 47.649, -122.358 47.653))';
DECLARE @h geography = 'POLYGON ((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))';
SELECT @g.STUnion(@h).ToString();
C. Génération d’un trou triagonal d’une union d’un CurvePolygon et d’un trou triagonal.
L'exemple suivant produit un trou triagonal de l'union d'un CurvePolygon
avec une instance Polygon
.
DECLARE @g geography = 'POLYGON ((-0.5 0, 0 1, 0.5 0.5, -0.5 0))';
DECLARE @h geography = 'CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(0 0, 0.7 0.7, 0 1), (0 1, 0 0)))';
SELECT @g.STUnion(@h).ToString();