对于给定的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)