STCurveN (type de données geography)
S’applique à : SQL ServerAzure SQL Database Azure SQL Managed Instance
Retourne la courbe spécifiée à partir d’une instance geography qui est LineString, CircularString ou CompoundCurve.
Syntaxe
.STCurveN( n )
Remarque
Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 (12.x) et versions antérieures, consultez la Documentation sur les versions antérieures.
Arguments
n
Expression int comprise entre 1 et le nombre de courbes de l’instance geography.
Types de retour
Type de retour SQL Server : geography
Type de retour CLR : SqlGeography
Exceptions
Si n < 1, ArgumentOutOfRangeException est levé.
Remarques
NULL est retourné en présence des critères suivants.
L’instance geography est déclarée, mais n’est pas instanciée
L’instance geography est vide
n dépasse le nombre de courbes dans l’instance geography (consultez STNumCurves (type de données geography)
La dimension de l’instance geography n’est pas la même (consultez STDimension (type de données geography)
Exemples
R. Utilisation de STCurveN() sur un CircularString
L’exemple suivant retourne la deuxième courbe d’une instance CircularString :
DECLARE @g geography = 'CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)';
SELECT @g.STCurveN(2).ToString();
L'exemple retourne.
CIRCULARSTRING (-122.348 47.658, -122.358 47.658, -122.358 47.653)
B. Utilisation de STCurveN() sur un CompoundCurve
L’exemple suivant retourne la deuxième courbe d’une instance CompoundCurve :
DECLARE @g geography = 'COMPOUNDCURVE(CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))';
SELECT @g.STCurveN(2).ToString();
L'exemple retourne.
CIRCULARSTRING (-122.348 47.658, -122.358 47.658, -122.358 47.653)
C. Utilisation de STCurveN() sur un CompoundCurve qui contient trois CircularStrings
L’exemple suivant utilise une instance CompoundCurve qui combine trois instances CircularString distinctes dans la même séquence de courbes que l’exemple précédent :
DECLARE @g geography = 'COMPOUNDCURVE (CIRCULARSTRING (-122.358 47.653, -122.348 47.649, -122.348 47.658), CIRCULARSTRING(-122.348 47.658, -122.358 47.658, -122.358 47.653))';
SELECT @g.STCurveN(2).ToString();
L'exemple retourne.
CIRCULARSTRING (-122.348 47.658, -122.358 47.658, -122.358 47.653)
STCurveN()
retourne les mêmes résultats indépendamment du format de texte WKT utilisé.
D. Test de validité avant d'appeler STCurve()
L’exemple suivant montre comment vérifier que n est valide avant d’appeler la méthode STCurveN() :
DECLARE @g geography;
DECLARE @n int;
SET @n = 2;
SET @g = geography::Parse('LINESTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)');
IF @n >= 1 AND @n <= @g.STNumCurves()
BEGIN
SELECT @g.STCurveN(@n).ToString();
END
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : pendant toute l’année 2024, nous allons éliminer progressivement Problèmes GitHub comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, voir :Soumettre et afficher des commentaires pour