ST_MakePolygon - Amazon Redshift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

ST_MakePolygon

ST_MakePolygon有两个可返回一个Polyon的变体。一个采用单一几何体,另一个采用两种几何体。

  • 第一个变体的输入是定义输出的边环的线串。

  • 第二个变体的输入是线串和多线串。这两种均为空或闭合。

    输出Polyon的外部环的边界是输入linestring,而Polyon的内部环的边界是输入多线串中的linestring。如果输入的linestring是空的,则返回一个空的Polyon。多线串中的空线串将被忽略。所得几何体的空间参考系统标识符(SRID)是两个输入几何体的通用SRID。

Syntax

ST_MakePolygon(geom1)
ST_MakePolygon(geom1, geom2)

Arguments

geom1

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。亚型必须 LINESTRING。的 束状 值必须关闭或清空。

geom2

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。子类型必须是 MULTILINESTRING

返回类型

子类型 POLYGONGEOMETRY

返回的几何体的空间参考系统标识符(SRID)等于输入的SRID。

如果 geom1geom2 为 null,则返回 null。

如果 地理网1 不是linestring,则返回错误。

如果 地理位置2 不是多行串,则返回一个错误。

如果 地理网1 未关闭,则返回错误。

如果 地理网1 是单点或未关闭,则返回错误。

如果 地理位置2 包含至少一个具有单点或未闭合的linestring,然后返回错误。

如果 geom1geom2 具有不同的 SRID 值,则返回一个错误。

Examples

以下 SQL 从输入线串返回多边形。

SELECT ST_AsText(ST_MakePolygon(ST_GeomFromText('LINESTRING(77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07)')));
st_astext --------------- POLYGON((77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07))

下列语句将从一个闭合的线串和一个闭合的多线串创建一个Polyon。线串用于的外环。多线串中的线串用于对的内环。

SELECT ST_AsEWKT(ST_MakePolygon(ST_GeomFromText('LINESTRING(0 0,10 0,10 10,0 10,0 0)'), ST_GeomFromText('MULTILINESTRING((1 1,1 2,2 1,1 1),(3 3,3 4,4 3,3 3))')));
st_astext ---------------------------------- POLYGON((0 0,10 0,10 10,0 10,0 0),(1 1,1 2,2 1,1 1),(3 3,3 4,4 3,3 3))