STNumPoints (tipo de datos geography)
Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Base de datos de Azure SQL de Microsoft Fabric
Devuelve el número total de puntos de cada una de las figuras de una instancia de geography.
Sintaxis
.STNumPoints ( )
Tipos de valor devuelto
Tipo de valor devuelto de SQL Server: int
Tipo de valor devuelto de CLR: SqlInt32
Observaciones
Este método cuenta los puntos de la descripción de una instancia de geography. Se cuentan los puntos duplicados; sin embargo, los puntos de conexión entre segmentos se cuentan solo una vez. Si esta instancia es una colección, este método devuelve el número total de puntos de la colección.
Ejemplos
A. Recuperar el número total de puntos en un objeto LineString
En el ejemplo siguiente se crea una instancia de LineString
y se utiliza STNumPoints()
para determinar el número de puntos que se utilizaron en la descripción de la instancia.
DECLARE @g geography;
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);
SELECT @g.STNumPoints();
B. Recuperar el número total de puntos en un objeto GeometryCollection
En el siguiente ejemplo se devuelve una suma de los puntos de todos los elementos de GeometryCollection
.
DECLARE @g geography = 'GEOMETRYCOLLECTION(CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)
,CURVEPOLYGON(CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)))';
SELECT @g.STNumPoints();
C. Devolver el número de puntos en un objeto CompoundCurve
En el siguiente ejemplo se devuelve el número de puntos de una instancia CompoundCurve. La consulta devuelve 5 en lugar de 6 porque STNumPoints () solo cuenta una vez el punto de conexión entre los segmentos.
DECLARE @g geography = 'COMPOUNDCURVE(CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658),( -122.348 47.658, -121.56 48.12, -122.358 47.653))'
SELECT @g.STNumPoints();