ALineString由
Point值组成。您可以提取 a 的特定点LineString,计算它包含的点数,或获取它的长度。
本节中的一些函数也适用于
MultiLineString值。
ST_EndPoint()并且EndPoint()是同义词。有关详细信息,请参阅 的说明ST_EndPoint()。返回一个双精度数字,指示其关联空间参考中
LineString或MultiLineString值 的长度。ls值的长度MultiLineString等于其元素的长度之和。如果参数是NULL或 空几何,则返回值为NULL。mysql> SET @ls = 'LineString(1 1,2 2,3 3)'; mysql> SELECT GLength(GeomFromText(@ls)); +----------------------------+ | GLength(GeomFromText(@ls)) | +----------------------------+ | 2.8284271247461903 | +----------------------------+ mysql> SET @mls = 'MultiLineString((1 1,2 2,3 3),(4 4,5 5))'; mysql> SELECT GLength(GeomFromText(@mls)); +-----------------------------+ | GLength(GeomFromText(@mls)) | +-----------------------------+ | 4.242640687119286 | +-----------------------------+GLength()是一个非标准名称。对应OpenGISLength()功能。(有一个现有的 SQL 函数Length()可以计算字符串值的长度。)ST_IsClosed()并且IsClosed()是同义词。有关详细信息,请参阅 的说明ST_IsClosed()。ST_NumPoints()并且NumPoints()是同义词。有关详细信息,请参阅 的说明ST_NumPoints()。ST_PointN()并且PointN()是同义词。有关详细信息,请参阅 的说明ST_PointN()。返回值
Point的端点。如果参数是 或 空几何,则返回值为。LineStringlsNULLNULLmysql> SET @ls = 'LineString(1 1,2 2,3 3)'; mysql> SELECT ST_AsText(ST_EndPoint(ST_GeomFromText(@ls))); +----------------------------------------------+ | ST_AsText(ST_EndPoint(ST_GeomFromText(@ls))) | +----------------------------------------------+ | POINT(3 3) | +----------------------------------------------+ST_EndPoint()并且EndPoint()是同义词。对于
LineStringvaluels,ST_IsClosed()如果闭合则返回 1ls(即它ST_StartPoint()和ST_EndPoint()值相同)。如果参数是NULL或 空几何,则返回值为NULL。对于
MultiLineStringvaluels,ST_IsClosed()如果关闭则返回 1ls(也就是说, 对于每个in , theST_StartPoint()和 的ST_EndPoint()值都相同)。LineStringlsST_IsClosed()ls如果未关闭 则返回 0 。mysql> SET @ls1 = 'LineString(1 1,2 2,3 3,2 2)'; mysql> SET @ls2 = 'LineString(1 1,2 2,3 3,1 1)'; mysql> SELECT ST_IsClosed(ST_GeomFromText(@ls1)); +------------------------------------+ | ST_IsClosed(ST_GeomFromText(@ls1)) | +------------------------------------+ | 0 | +------------------------------------+ mysql> SELECT ST_IsClosed(ST_GeomFromText(@ls2)); +------------------------------------+ | ST_IsClosed(ST_GeomFromText(@ls2)) | +------------------------------------+ | 1 | +------------------------------------+ mysql> SET @ls3 = 'MultiLineString((1 1,2 2,3 3),(4 4,5 5))'; mysql> SELECT ST_IsClosed(ST_GeomFromText(@ls3)); +------------------------------------+ | ST_IsClosed(ST_GeomFromText(@ls3)) | +------------------------------------+ | 0 | +------------------------------------+ST_IsClosed()并且IsClosed()是同义词。返回 value 中的对象
Point数。如果参数是 或 空几何,则返回值为。LineStringlsNULLNULLmysql> SET @ls = 'LineString(1 1,2 2,3 3)'; mysql> SELECT ST_NumPoints(ST_GeomFromText(@ls)); +------------------------------------+ | ST_NumPoints(ST_GeomFromText(@ls)) | +------------------------------------+ | 3 | +------------------------------------+ST_NumPoints()并且NumPoints()是同义词。返回value 中 的
N第 -th 个 。点从 1 开始编号。如果任何参数是或几何参数是空几何,则返回值为 。PointLinestringlsNULLNULLmysql> SET @ls = 'LineString(1 1,2 2,3 3)'; mysql> SELECT ST_AsText(ST_PointN(ST_GeomFromText(@ls),2)); +----------------------------------------------+ | ST_AsText(ST_PointN(ST_GeomFromText(@ls),2)) | +----------------------------------------------+ | POINT(2 2) | +----------------------------------------------+ST_PointN()并且PointN()是同义词。返回值
Point的起点。如果参数是 或 空几何,则返回值为。LineStringlsNULLNULLmysql> SET @ls = 'LineString(1 1,2 2,3 3)'; mysql> SELECT ST_AsText(ST_StartPoint(ST_GeomFromText(@ls))); +------------------------------------------------+ | ST_AsText(ST_StartPoint(ST_GeomFromText(@ls))) | +------------------------------------------------+ | POINT(1 1) | +------------------------------------------------+ST_StartPoint()并且StartPoint()是同义词。ST_StartPoint()并且StartPoint()是同义词。有关详细信息,请参阅 的说明ST_StartPoint()。