st_perimeter函式

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

Important

地理值的支援目前已 在公開預覽階段。 一般可支援幾何值。

備註

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

傳回輸入 GEOGRAPHY 或 GEOMETRY 值的周邊。

Syntax

st_perimeter ( geoExpr )

Arguments

  • geoExpr: GEOGRAPHY 或 GEOMETRY 值。

Returns

類型 DOUBLE 的值,表示輸入 GEOGRAPHY 或 GEOMETRY 值的周長。

如果輸入是 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