本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
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。
如果 geom 是 GEOMETRYCOLLECTION
,則會傳回錯誤。
範例
下列 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))