共用方式為


st_length函式

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

Important

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

備註

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

傳回輸入 GEOGRAPHYGEOMETRY 值的長度。

Syntax

st_length ( geoExpr )

Arguments

  • geoExpr: GEOGRAPHYGEOMETRY 值。

Returns

一個型別為 DOUBLE 的值,表示輸入值 GEOGRAPHYGEOMETRY 的長度。

如果輸入是 GEOGRAPHY 值,函式會傳回值的線性部分 GEOGRAPHY 的 2D 地理長度。 具體而言,函式會傳回行字串的地理長度,以及多行字元串中行字串長度的總和。 針對非線性地理位置(點、多邊形、多點和多個多邊形),會傳回 0,而對於幾何集合,函式會傳回集合中各個元素長度的總和。 結果是藉由假設使用 WGS84 橢球體進行反向大地計算得出的。 結果的單位為公尺。

如果輸入是 GEOMETRY 值,函式會傳回值的線性部分 GEOMETRY 的 2D 笛卡兒長度。 具體而言,函式會傳回 linestring 的 2D 笛卡兒長度,以及多行字串中行字串長度的總和。 針對非線性幾何類型(點、多邊形、多點和多多邊形)將傳回 0,而對於幾何集合,則會傳回集合中各個元素長度的總和。 結果的單位是與輸入 GEOMETRY 值相關的空間參考系統的單位。

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

Examples

-- Returns the length of a 2D Cartesian linestring.
> SELECT round(st_length(st_geomfromtext('LINESTRING(10 34,44 57,30 24)')), 8);
  76.89564816