10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 本手册下载 本手册摘录

12.17.7.3 LineString和MultiLineString产权功能

一个LineString值。你可以提取特定的点LineString,它包含计算点的数量,或获得它的长度。

一些功能在本节也工作MultiLineString值。

除非另有说明,函数在这部分处理几何参数如下:

  • 如果任何争论或任何几何参数是一个空的几何,返回值

  • 如果任何几何参数不是语法格式良好的几何图形,一个ER_GIS_INVALID_DATA发生错误。

  • 如果在一个未定义的几何参数是一个语法结构良好的几何空间引用系统(SRS),一个ER_SRS_NOT_FOUND发生错误。

  • 否则,返回值为非

这些函数可用于获取linestring属性:

  • ST_EndPoint (ls)

    返回的端点LineString价值ls

    ST_EndPoint ()处理其所描述的参数作为本节的介绍。

    mysql >设置@ls = ' LineString (1 1 2 2 3 3)”;mysql >选择ST_AsText (ST_EndPoint (ST_GeomFromText (@ls)));+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | ST_AsText (ST_EndPoint (ST_GeomFromText (@ls))) | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +(3 3) | |点+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  • ST_IsClosed (ls)

    对于一个LineString价值ls,ST_IsClosed ()返回1,如果ls关闭(即它吗ST_StartPoint ()ST_EndPoint ()值是相同的)。

    对于一个MultiLineString价值ls,ST_IsClosed ()返回1,如果ls关闭(即ST_StartPoint ()ST_EndPoint ()值是相同的LineStringls)。

    ST_IsClosed ()返回0,如果ls不是封闭的,如果ls

    ST_IsClosed ()处理它的参数如介绍本节所述,这个异常:

    mysql >设置@ls1 = ' LineString (1 1 2 2 3 3 2 2)”;mysql >设置@ls2 = ' LineString (1 1 2 2 3 3 1 1)”;mysql >选择ST_IsClosed (ST_GeomFromText (@ls1));+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | ST_IsClosed (ST_GeomFromText (@ls1)) | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | 0 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + mysql >选择ST_IsClosed (ST_GeomFromText (@ls2));+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | ST_IsClosed (ST_GeomFromText (@ls2)) | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | 1 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + mysql >设置@ls3 =“MultiLineString ((1 1 2 2 3 3), (4 4、5 5)”;mysql >选择ST_IsClosed (ST_GeomFromText (@ls3));+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | ST_IsClosed (ST_GeomFromText (@ls3)) | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | 0 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  • ST_Length (ls(,单位])

    返回一个双精度数表示的长度LineStringMultiLineString价值ls在其空间引用系统有关。的长度MultiLineString价值等于它的元素的长度的总和。

    ST_Length ()计算结果如下:

    • 如果几何是有效的LineString在笛卡尔SRS,返回值是笛卡尔几何长度。

    • 如果几何是有效的MultiLineString笛卡尔SRS,返回值是笛卡尔的长度之和的元素。

    • 如果几何是有效的LineString在一个地理SRS,返回值是SRS的大地的几何长度,在米。

    • 如果几何是有效的MultiLineString在地理SRS,返回值是大地的长度之和SRS的元素,在米。

    ST_Length ()处理它的参数如介绍本节所述,这些异常:

    MySQL 8.0.16,ST_Length ()允许一个可选的单位参数指定的线性单元返回的长度值。这些规则适用:

    • 如果指定一个单位MySQL,但不支持的ER_UNIT_NOT_FOUND发生错误。

    • 如果指定一个支持线性单元和SRID = 0,ER_GEOMETRY_IN_UNKNOWN_LENGTH_UNIT发生错误。

    • 如果指定一个支持线性单元和SRID不是0,结果是单位。

    • 如果没有指定单位,结果是在单位SRS的几何图形,无论是笛卡尔或地理。目前,所有MySQL srs在米表示。

    支持一个单元中发现的INFORMATION_SCHEMAST_UNITS_OF_MEASURE表。看到部分26.3.37”INFORMATION_SCHEMA ST_UNITS_OF_MEASURE表”

    mysql >设置@ls = ST_GeomFromText (“LineString (1 1 2 2 3 3) ');mysql >选择ST_Length (@ls);+ - - - - - - - - - - - - - - - - - - - - - - + | ST_Length (@ls) | + - - - - - - - - - - - - - - - - - - - - - - + | 2.8284271247461903 | + - - - - - - - - - - - - - - - - - - - - - - + mysql >设置@mls = ST_GeomFromText (“MultiLineString ((1 1 2 2 3 3), (4 4、5 5) ');mysql >选择ST_Length (@mls);+ - - - - - - - - - - - - - - - - - - - + | ST_Length (@mls) | + - - - - - - - - - - - - - - - - - - - + | 4.242640687119286 | + - - - - - - - - - - - - - - - - - - - + mysql >设置@ls = ST_GeomFromText (“LineString(1 1 2 2 3 3)”, 4326年);mysql >选择ST_Length (@ls);+ - - - - - - - - - - - - - - - - - - - + | ST_Length (@ls) | + - - - - - - - - - - - - - - - - - - - + | 313701.9623204328 | + - - - - - - - - - - - - - - - - - - - + mysql >选择ST_Length (@ls,“米”);+ - - - - - - - - - - - - - - - - - - - - - - - - - + | ST_Length (@ls,“米”)| + - - - - - - - - - - - - - - - - - - - - - - - - - + | 313701.9623204328 | + - - - - - - - - - - - - - - - - - - - - - - - - - + mysql >选择ST_Length (@ls,“脚”);+ - - - - - - - - - - - - - - - - - - - - - - - - + | ST_Length (@ls,“脚”)| + - - - - - - - - - - - - - - - - - - - - - - - - + | 1029205.9131247795 | + - - - - - - - - - - - - - - - - - - - - - - - - +
  • ST_NumPoints (ls)

    返回的数量中的对象LineString价值ls

    ST_NumPoints ()处理其所描述的参数作为本节的介绍。

    mysql >设置@ls = ' LineString (1 1 2 2 3 3)”;mysql >选择ST_NumPoints (ST_GeomFromText (@ls));+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | ST_NumPoints (ST_GeomFromText (@ls)) | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | 3 | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  • ST_PointN (ls,N)

    返回NthLinestring价值ls。点从1开始编号。

    ST_PointN ()处理其所描述的参数作为本节的介绍。

    mysql >设置@ls = ' LineString (1 1 2 2 3 3)”;mysql >选择ST_AsText (ST_PointN (ST_GeomFromText (@ls), 2));+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | ST_AsText (ST_PointN (ST_GeomFromText (@ls), 2)) | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +(2 2) | |点+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  • ST_StartPoint (ls)

    返回的起点LineString价值ls

    ST_StartPoint ()处理其所描述的参数作为本节的介绍。

    mysql >设置@ls = ' LineString (1 1 2 2 3 3)”;mysql >选择ST_AsText (ST_StartPoint (ST_GeomFromText (@ls)));+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | ST_AsText (ST_StartPoint (ST_GeomFromText (@ls))) | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +(1) | + |点- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +