Teilen über


st_length-Funktion

Gilt für:check marked yes Databricks SQL check marked yes Databricks Runtime 17.1 and above

Important

Dieses Feature befindet sich in der Public Preview.

Hinweis

Dieses Feature ist in Databricks SQL Classic Warehouses nicht verfügbar. Weitere Informationen zu Databricks SQL Warehouses finden Sie unter SQL Warehouse-Typen.

Gibt die Länge der Eingabe, entweder GEOGRAPHY oder GEOMETRY, zurück.

Syntax

st_length ( geoExpr )

Arguments

  • geoExpr: Ein GEOGRAPHY- oder GEOMETRY-Wert.

Returns

Ein Wert vom Typ DOUBLE, der die Länge des Eingabewerts GEOGRAPHY oder GEOMETRY darstellt.

Wenn es sich bei der Eingabe um einen GEOGRAPHY Wert handelt, gibt die Funktion die geodätische Länge 2D des linearen Teils des GEOGRAPHY Werts zurück. Insbesondere gibt die Funktion die geodesische Länge für Linienzeichenfolgen und die Summe der Längen der Linienzeichenfolgen in einer mehrzeiligen Zeichenfolge zurück. Für nicht lineare Regionen (Punkte, Polygone, Multipoints und Multipolygons) wird 0 zurückgegeben, während die Funktion für Geometrieauflistungen die Summe der Längen der Elemente in der Auflistung zurückgibt. Das Ergebnis wird berechnet, indem die inverse geodätische Berechnung auf Grundlage des WGS84-Ellipsoids durchgeführt wird. Die Einheiten des Ergebnisses sind Meter.

Wenn die Eingabe ein GEOMETRY Wert ist, gibt die Funktion die 2D-Kartesische Länge des linearen Teils des GEOMETRY Werts zurück. Insbesondere gibt die Funktion die 2D Cartesian-Länge für Linienzeichenfolgen und die Summe der Längen der Linienzeichenfolgen in einer mehrzeiligen Zeichenfolge zurück. Für nicht lineare Geometrien (Punkte, Polygone, Multipoints und Multipolygons) wird 0 zurückgegeben, während für Geometrieauflistungen die Summe der Längen der Elemente in der Auflistung zurückgegeben wird. Die Einheiten des Ergebnisses sind die Einheiten des Räumlichen Bezugssystems des Eingabewerts GEOMETRY .

Die Funktion gibt zurück NULL , wenn eine der Eingaben lautet 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