STLength (тип данных geography)
Область применения: SQL Server
База данных SQL Azure
Управляемый экземпляр SQL Azure
базе данных SQL в Microsoft Fabric
Возвращает общую длину элементов в экземпляре geography или в экземплярах geography в коллекции GeometryCollection.
Синтаксис
.STLength ( )
Типы возвращаемых данных
Тип возвращаемого значения SQL Server: float
Тип возвращаемых данных CLR: SqlDouble
Замечания
Если экземпляр geography замкнут, его длина вычисляется как общая длина пути обхода экземпляра; длина любого многоугольника есть его периметр, а длина точки — 0. Длина коллекции GeometryCollection находится путем вычисления суммы длин всех экземпляров geography, содержащихся в коллекции.
STLength() работает и с допустимыми и с недопустимыми объектами LineString. Обычно LineString является недопустимым вследствие перекрывающихся сегментов, которые могут быть вызваны аномалиями, например неточными трассировками GPS. STLength() не удаляет перекрывающиеся или недопустимые сегменты. Он включает перекрывающиеся и недопустимые сегменты в возвращаемое значение длины. Метод MakeValid() может удалять перекрывающиеся сегменты из LineString.
Примеры
В следующем примере создается экземпляр LineString
и используется метод STLength()
для получения его длины.
DECLARE @g geography;
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);
SELECT @g.STLength();