STLength (tipo de datos geometry)
Devuelve la longitud total de los elementos de una instancia de geometry.
Sintaxis
.STLength ( )
Tipos de valores devueltos
SQL Server tipo de valor devuelto: float
Tipo de valor devuelto de CLR: SqlDouble
Comentarios
Si se trata de una instancia de geometry cerrada, su longitud se calcula como la longitud total alrededor de la instancia; la longitud de cualquier polígono es su perímetro y la longitud de un punto es 0. La longitud de cualquier tipo geometry collection es la suma de las longitudes de las instancias de geometry que contiene.
STLength() funciona con LineString válidos y no válidos. Si un LineString no es válido normalmente se debe a la superposición de segmentos, lo cual se puede deber a anomalías como seguimientos de GPS inexactos. STLength() no quita segmentos superpuestos o no válidos. Incluye los segmentos superpuestos y no válidos en el valor de longitud que devuelve. El método MakeValid() puede quitar segmentos superpuestos de un LineString.
Ejemplos
En el ejemplo siguiente se crea una instancia de LineString y se usa STLength() para averiguar la longitud de dicha instancia.
DECLARE @g geometry;
SET @g = geometry::STGeomFromText('LINESTRING(0 0, 2 2, 1 0)', 0);
SELECT @g.STLength();