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

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

ST_MakePolygon

ST_MakePolygon有两个可返回多边形的变量。一个采用单一几何形状,另一个采用两个几何形状。

  • 第一个变量的输入是定义输出多边形的外环的linestring。

  • 第二个变量的输入是linestring和多线字符串。这两个都是空的或已关闭的。

    输出多边形的外环的边界是输入linestring,多边形的内环的边界是输入多线字符串中的linestring。如果输入linestring为空,则返回空的多边形。多线条字符串中的空白线条字符串将忽略。所得到的几何形状的空间参考系统标识符(SRID)是两个输入几何形状的共同SRID。

Syntax

ST_MakePolygon(geom1)
ST_MakePolygon(geom1, geom2)

Arguments

geom1

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。子类型必须 LINESTRING。的 linestring(线条字符串) 值必须已关闭或为空。

geom2

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

返回类型

子类型 POLYGONGEOMETRY

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

如果 用种场出1,或 用种场出2 为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))

以下SQL从闭合的折线字符串和闭合的多线字符串创建多边形。linestring用于多边形的外环。多线串中的线串用于多边形的内部环。

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))