Partekatu bidez


st_length Función

Se aplica a:check marcado yes Databricks SQL check marcado yes Databricks Runtime 17.1 y versiones posteriores

Important

Esta característica está en versión preliminar pública.

Nota:

Esta característica no está disponible en almacenes clásicos de Databricks SQL. Para más información sobre los almacenes de SQL de Databricks, consulte Tipos de almacenamiento de SQL.

Devuelve la longitud de la entrada GEOGRAPHY o GEOMETRY.

Syntax

st_length ( geoExpr )

Arguments

  • geoExpr: un valor de GEOGRAPHY o GEOMETRY.

Returns

Valor de tipo DOUBLE, que representa la longitud de la entrada GEOGRAPHY o GEOMETRY valor.

Si la entrada es un GEOGRAPHY valor, la función devuelve la longitud geodesica 2D de la parte lineal del GEOGRAPHY valor. En concreto, la función devuelve la longitud geodesica de las líneas y la suma de las longitudes de las líneas en una cadena multilínea. En el caso de las zonas geográficas no lineales (puntos, polígonos, multipuntos y multipolygons), se devuelve 0, mientras que para las colecciones de geometría, la función devuelve la suma de las longitudes de los elementos de la colección. El resultado se calcula realizando el cálculo geodesico inverso suponiendo el elipsoide WGS84. Las unidades del resultado son metros.

Si la entrada es un GEOMETRY valor, la función devuelve la longitud cartesiana 2D de la parte lineal del GEOMETRY valor. En concreto, la función devuelve la longitud cartesiana 2D para linestrings y la suma de las longitudes de las líneas en una cadena multilínea. En el caso de las geometrías no lineales (puntos, polígonos, multipuntos y multipolygons), se devuelve 0, mientras que para las colecciones de geometría, devuelve la suma de las longitudes de los elementos de la colección. Las unidades del resultado son las del sistema de referencia espacial del valor de entrada GEOMETRY .

La función devuelve NULL si alguna de las entradas es 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