Sdílet prostřednictvím


st_perimeter Funkce

Platí pro:check označený jako ano Kontrola SQL Databricks označená jako ano Databricks Runtime 17.1 a vyšší

Important

Tato funkce je ve verzi Public Preview.

Poznámka:

Tato funkce není k dispozici ve skladech Databricks SQL Classic. Další informace o službě Databricks SQL Warehouse najdete v tématu Typy SQL Warehouse.

Vrátí obvod hodnoty GEOGRAPHY nebo GEOMETRY vstupu.

Syntax

st_perimeter ( geoExpr )

Arguments

  • geoExpr: A GEOGRAPHY nebo GEOMETRY hodnota.

Returns

Hodnota typu DOUBLEpředstavující obvod vstupu GEOGRAPHY nebo GEOMETRY hodnoty.

Pokud je vstup hodnotou GEOGRAPHY, funkce vypočítá geodetický obvod vstupní hodnoty GEOGRAPHY. Konkrétně vrátí součet geodesických délek (2D projekce) mnohoúhelníku a součtu obvodů mnohoúhelníku v multipolygonu. Pro neploché zeměpisné oblasti (body, liniové řetězce, vícebodové a více liniové řetězce) se vrátí 0, zatímco u kolekce geometrie se vrátí součet obvodů prvků v kolekci. Výsledek se vypočítá provedením inverzního geodetického výpočtu za předpokladu, že WGS84 elipsoidu. Jednotky výsledku jsou měřiče.

Pokud je vstupní hodnota GEOMETRY, funkce vrátí kartézský obvod vstupní hodnoty GEOMETRY. Konkrétně vrátí součet délky (2D kartézské projekce) mnohoúhelníku a součet obvodů mnohoúhelníku v multipolygonu. Pro jiné než areální geometrie (body, spojnicové čáry, vícebodové a víceřádkové řetězce) se vrátí 0, zatímco u kolekcí geometrických prvků se vrátí součet obvodů prvků v kolekci. Jednotky výsledku jsou jednotky prostorového referenčního systému vstupní GEOMETRY hodnoty.

Funkce vrátí NULL , pokud je některý ze vstupů 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