ST_Length

对于给定的LineString或MultiLineString,返回其二维空间内的长度。

语法

float ST_Length(geometry a2dlinestring);
float ST_Length(geography geog , boolean useSpheroid);

参数

参数名称

描述

a2dlinestring

一个2维线形Geometry对象。

geog

目标Geography对象。

useSpheroid

是否使用椭球模型。

描述

  • 对于Geometry对象:

    • 如果是LineString、MultiLineString、ST_Curve、ST_MultiCurve则返回其2D笛卡尔长度。

    • 如果是面对象将返回0。这时需要使用ST_Perimeter

    • 长度的单位由对象的空间参考系统指定。

  • 对于Geography对象,使用反解测地线问题执行计算,单位为米。

示例

默认调用:

SELECT ST_Length('LINESTRING(0 0,1 1)'::geometry);
    st_length
-----------------
 1.4142135623731
(1 row)