funktion st_perimeter

Gäller för:check markerad ja Databricks SQL-kontroll markerad ja Databricks Runtime 17.1 och senare

Important

Den här funktionen finns som allmänt tillgänglig förhandsversion.

Anmärkning

Den här funktionen är inte tillgänglig på de klassiska Databricks SQL-lagerhus. Mer information om Databricks SQL-lager finns i SQL-lagertyper.

Returnerar perimetern för indata GEOGRAPHY eller GEOMETRY.

Syntax

st_perimeter ( geoExpr )

Arguments

  • geoExpr: Ett GEOGRAPHY- eller GEOMETRY-värde.

Returns

Ett värde av typen DOUBLE, som representerar perimetern för indata GEOGRAPHY eller GEOMETRY värde.

Om indata är ett GEOGRAPHY värde beräknar funktionen den geodesiska perimetern för indata GEOGRAPHY värde. Mer specifikt returnerar den summan av de geodesiska längderna för segmenten (2D-projektioner) i en polygon och summan av polygonernas perimeterer i en multipolygon. För icke-areala geografiska områden (punkter, linjer, multipunkter och multilinestrings) returneras 0, medan den för geometrisamlingar returnerar summan av perimetererna för elementen i samlingen. Resultatet beräknas genom att utföra den inverterade geodesiska beräkningen förutsatt att WGS84-ellipsoiden. Resultatets enheter är mätare.

Om indata är ett GEOMETRY värde returnerar funktionen kartesisk perimeter för indatavärdet GEOMETRY . Mer specifikt returnerar den summan av längden på segmenten (2D Kartesianska projektioner) i en polygon och summan av polygonernas perimeterer i en multipolygon. För icke-areala geometrier (punkter, linjer, multipunkter och multilinestrings) returneras 0, medan den för geometrisamlingar returnerar summan av perimetererna för elementen i samlingen. Resultatets enheter är de som ingår i det rumsliga referenssystemet för indatavärdet GEOMETRY .

Funktionen returnerar NULL om någon av indata är 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