ST_Boundary - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

ST_Boundary

ST_Boundary 會傳回輸入幾何的邊界,如下所示:

  • 如果輸入幾何是空的 (也就是說,它不包含任何點),則會按原樣傳回。

  • 如果輸入幾何是點或非空的多點,則會傳回空的幾何集合。

  • 如果輸入為 linestring 或 multilinestring,則會傳回包含邊界上所有點的多點。多點可能是空的)。

  • 如果輸入是沒有任何內環的多邊形,則會傳回表示其邊界的封閉 linestring。

  • 如果輸入是具有內環的多邊形,或者是多重多邊形,則會傳回 multilinestring。Multilinestring 包含面積幾何中所有環的所有邊界,做為封閉 linestring。

為了確定點相等,ST_Boundary 對輸入幾何的 2D 投影進行操作。如果輸入幾何為空,則會以與輸入相同的維度傳回其副本。對於非空的 3DM 和 4D 幾何,它們的 m 座標會被捨棄。在 3DZ 和 4D multilinestring 的特殊情況下,multilinestring 邊界點的 z 座標會計算為具有相同 2D 投影之 linestring 邊界點之相異 z 值的平均值。

語法

ST_Boundary(geom)

引數

geom

GEOMETRY 資料類型的值,或是評估為 GEOMETRY 類型的表達式。

傳回類型

GEOMETRY

如果 geom 為 Null,則會傳回 Null。

如果 geomGEOMETRYCOLLECTION,則會傳回錯誤。

範例

下列 SQL 傳回輸入多邊形的邊界作為 multilinestring。

SELECT ST_AsEWKT(ST_Boundary(ST_GeomFromText('POLYGON((0 0,10 0,10 10,0 10,0 0),(1 1,1 2,2 1,1 1))')));
st_asewkt -------------------- MULTILINESTRING((0 0,10 0,10 10,0 10,0 0),(1 1,1 2,2 1,1 1))