共用方式為


st_perimeter函式

適用於:核取標示為是 Databricks SQL 核取標示為是 Databricks Runtime 17.1 和更新版本

Important

這項功能目前處於 公開預覽版

備註

這項功能不適用於 Databricks SQL Classic 倉儲。 若要深入瞭解 Databricks SQL 倉儲,請參閱 SQL 倉儲類型

傳回輸入 GEOGRAPHYGEOMETRY 值的周邊。

Syntax

st_perimeter ( geoExpr )

Arguments

  • geoExpr: GEOGRAPHYGEOMETRY 值。

Returns

類型 DOUBLE 的值,表示輸入 GEOGRAPHYGEOMETRY 值的周長。

如果輸入是 GEOGRAPHY 值,則函式是輸入 GEOGRAPHY 值的地理周長。 具體來說,它會傳回多邊形區段(2D 投影的區段)的測地線長度總和,以及多面形中多邊形周長的總和。 針對非面積地理位置(點、線串、多點和多線串),會回傳 0,而對於幾何集合,則會回傳集合中元素周長的總和。 結果是藉由假設使用 WGS84 橢球體進行反向大地計算得出的。 結果的單位為公尺。

如果輸入是 GEOMETRY 值,函式會傳回輸入 GEOMETRY 值的笛卡兒周長。 具體來說,它會傳回多邊形線段的 (2D 笛卡兒投影) 長度總和,以及多多邊形結構中每個多邊形周長的總和。 對於非面積幾何(點、線串、多點和多線串),會返回 0;而對於幾何集合,則會返回集合中元素周長的總和。 結果的單位是與輸入 GEOMETRY 值相關的空間參考系統的單位。

如果任何輸入為 NULL,則函式會傳NULL回 。

Examples

-- Returns the perimeter of a 2D Cartesian polygon with a hole.
> SELECT round(st_perimeter(st_geomfromtext('POLYGON((0 0,50 0,50 50,0 50,0 0),(20 20,25 30,30 20,20 20))')), 2);
  232.36