名称

ST_StartPoint — 返回 LineString 的第一个点。

概要

geometry ST_StartPoint(geometry geomA);

描述

POINT 形式返回 LINESTRINGCIRCULARLINESTRING 几何图形的第一个点。如果输入不是 LINESTRINGCIRCULARLINESTRING,则返回 NULL

此方法实现了 SQL/MM 规范。SQL-MM 3:7.1.3

此函数支持 3D,并且不会删除 z 索引。

此方法支持圆弧字符串和曲线。

[Note]

增强功能:3.2.0 为所有几何图形返回一个点。先前的行为是如果输入不是 LineString 则返回 NULL。

已更改:2.0.0 不再适用于单几何 MultiLineString。在旧版本的 PostGIS 中,单线 MultiLineString 可以很好地与此函数一起使用并返回起始点。在 2.0.0 中,它就像任何其他 MultiLineString 一样返回 NULL。旧的行为是一个未文档化的特性,但是那些假设他们的数据存储为 LINESTRING 的用户可能会在 2.0.0 中遇到这些返回 NULL 的情况。

示例

LineString 的起始点

SELECT ST_AsText(ST_StartPoint('LINESTRING(0 1, 0 2)'::geometry));
 st_astext
------------
 POINT(0 1)

非 LineString 的起始点为 NULL

SELECT ST_StartPoint('POINT(0 1)'::geometry) IS NULL AS is_null;
  is_null
----------
 t

3D LineString 的起始点

SELECT ST_AsEWKT(ST_StartPoint('LINESTRING(0 1 1, 0 2 2)'::geometry));
 st_asewkt
------------
 POINT(0 1 1)

CircularString 的起始点

SELECT ST_AsText(ST_StartPoint('CIRCULARSTRING(5 2,-3 1.999999, -2 1, -4 2, 6 3)'::geometry));
 st_astext
------------
 POINT(5 2)

另请参见

ST_EndPoint, ST_PointN