ST-geospatiala funktioner

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.

ST-geospatiala funktioner fungerar på objekt av typen GEOGRAPHY och/eller GEOMETRY, eller tillåta att konstruera GEOGRAPHY och GEOMETRY värden från standard- eller populära geospatiala format, eller exportera GEOGRAPHY och GEOMETRY värden till standard- eller populära geospatiala format.

Se även:

Importera Databricks-funktioner för att hämta ST-funktioner (Databricks Runtime)

Ingen import krävs för Databricks SQL och Spark SQL.

Om du vill importera ST-funktioner för Python eller Scala i notebook-filer använder du följande kommandon:

Python

from pyspark.databricks.sql import functions as dbf

Scala

import com.databricks.sql.functions._

Lista över ST-geospatiala funktioner (Databricks SQL)

Import

Function Description
st_geogfromgeojson(geojsonExpr) Returnerar ett GEOGRAPHY(4326) värde från dess GeoJSON-representation.
st_geogfromtext(wktExpr) Returnerar ett GEOGRAPHY(4326) värde från dess WKT-representation.
st_geogfromwkb(wktExpr) Returnerar ett GEOGRAPHY(4326) värde från dess WKB-representation.
st_geogfromwkt(wktExpr) Returnerar ett GEOGRAPHY(4326) värde från dess WKT-representation.
st_geomfromewkb(wktExpr) Returnerar ett GEOMETRY(ANY) värde från ewkb-representationen.
st_geomfromgeohash(geohashExpr) Returnerar den geohash-rutnätlåda som motsvarar indatavärdet för geohash i form av ett 2D-polygonvärde GEOMETRY .
st_geomfromgeojson(geojsonExpr) Returnerar ett GEOMETRY(4326) värde från dess GeoJSON-representation.
st_geomfromtext(wktExpr[, sridExpr]) Returnerar ett GEOMETRY(srid) eller GEOMETRY(ANY) -värde från dess WKT-representation och anger dess SRID-värde till värdet sridExpr, eller 0 om sridExpr det utelämnas.
st_geomfromwkb(wkbExpr[, sridExpr]) Returnerar ett GEOMETRY(srid) eller GEOMETRY(ANY) -värde från dess WKB-representation och anger dess SRID-värde till värdet sridExpr, eller 0 om sridExpr det utelämnas.
st_geomfromwkt(wktExpr[, sridExpr]) Returnerar ett GEOMETRY(srid) eller GEOMETRY(ANY) -värde från dess WKT-representation och anger dess SRID-värde till värdet sridExpr, eller 0 om sridExpr det utelämnas.
st_pointfromgeohash(geohash) Returnerar mitten av en geohash-ruta som motsvarar indatavärdet, som en 2D-punktsgeometri.
to_geography(georepExpr) Returnerar ett GEOGRAPHY(ANY) värde från dess GeoJSON-, WKB- eller WKT-representation.
to_geometry(georepExpr) Returnerar ett GEOMETRY(ANY) värde från EWKB-, GeoJSON-, WKB- eller WKT-representationen.
try_to_geography(georepExpr) Returnerar ett GEOGRAPHY(ANY) värde från dess GeoJSON-, WKB- eller WKT-representation, eller NULL om indatarepresentationen är ogiltig.
try_to_geometry(georepExpr) Returnerar ett GEOMETRY(ANY) värde från EWKB-, GeoJSON-, WKB- eller WKT-representationen eller NULL om indatarepresentationen är ogiltig.

Export

Function Description
st_asbinary(geoExpr) Returnerar WKB-representationen av indata GEOGRAPHY eller GEOMETRY värde som ett BINARY värde.
st_asewkb(geoExpr) Returnerar EWKB-representationen av indatavärdet GEOMETRY som ett BINARY värde.
st_asgeojson(geoExpr) Returnerar GeoJSON-representationen av indata GEOGRAPHY eller GEOMETRY värde som ett STRING värde.
st_asewkt(geoExpr) Returnerar EWKT-representationen av indata GEOGRAPHY eller GEOMETRY värde som ett STRING värde.
st_astext(geoExpr) Returnerar WKT-representationen av indata GEOGRAPHY eller GEOMETRY värde som ett STRING värde.
st_aswkb(geoExpr) Returnerar WKB-representationen av indata GEOGRAPHY eller GEOMETRY värde som ett BINARY värde.
st_aswkt(geoExpr) Returnerar WKT-representationen av indata GEOGRAPHY eller GEOMETRY värde som ett STRING värde.
st_geohash(geoExpr [, precisionExpr]) Returnerar geohash för indatageometrin med angiven precision.

Measurements

Function Description
st_area(geoExpr) Returnerar området för indata GEOGRAPHY eller GEOMETRY värde.
st_distance(geoExpr1, geoExpr2) Returnerar det 2D-kartesiska avståndet mellan de två indatavärdena GEOMETRY .
st_distancesphere(geoExpr1, geoExpr2) Returnerar det sfäriska avståndet (i meter) mellan två punktvärden GEOMETRY , mätt på en sfär vars radie är medelvärdesradien för WGS84-ellipsoiden.
st_distancespheroid(geoExpr1, geoExpr2) Returnerar det geodesiska avståndet (i meter) mellan två punktvärden GEOMETRY på WGS84-ellipsen.
st_length(geoExpr) Returnerar längden på indata GEOGRAPHY eller GEOMETRY värde.
st_perimeter(geoExpr) Returnerar perimetern för indata GEOGRAPHY eller GEOMETRY.

Constructors

Function Description
st_makeline(geoArray) Returnerar ett linjevärde GEOMETRY vars punkter är de icke-tomma punkterna i geometrierna i indatamatrisen med geometrier, som förväntas vara punkter, linjer eller flera punkter.
st_makepolygon(outer[, innerArray]) Konstruerar ett polygonvärde GEOMETRY från den yttre indatagränsen och en valfri matris med inre gränser, som representeras som stängda linjer.
st_point(x, y [, srid]) Returnerar ett punktvärde GEOMETRY med angivna X- och Y-koordinater och SRID-värde (om det tillhandahålls).

Accessors

Function Description
st_dimension(geoExpr) Returnerar den topologiska dimensionen för 2D-projektionen av GEOMETRY värdet.
st_dump(geoExpr) Returnerar en matris som innehåller de enskilda geometrierna i indatageometrin.
st_endpoint(geoExpr) Returnerar den sista punkten för indata GEOGRAPHY eller GEOMETRY värde, om det geospatiala indatavärdet är en icke-tom linjedragning.
st_envelope(geoExpr) Returnerar ett 2D-kartesiskt GEOMETRY värde som representerar den 2D-axeljusterade minsta avgränsningsrutan (kuvertet) för indatavärdet GEOMETRY .
st_envelope_agg(geoCol) Returnerar kuvertet för alla geometrier i kolumnen, eller NULL om kolumnen har noll rader eller endast NULL innehåller värden.
st_exteriorring(geoExpr) Returnerar indatapolygonens GEOGRAPHY yttre ring eller GEOMETRY som en linjedragning.
st_geometryn(geoExpr, nExpr) Returnerar det 1-baserade n:e elementet i indatavärdet GEOMETRY som ett GEOMETRY värde.
st_geometrytype(geoExpr) Returnerar typen av indata GEOGRAPHY eller GEOMETRY värde som en sträng.
st_interiorringn(geoExpr, indexExpr) Returnerar den n:e inre ringen i indatapolygonen GEOGRAPHY eller GEOMETRY som en linjedragning.
st_isempty(geoExpr) Returnerar sant om indata GEOGRAPHY eller GEOMETRY värde inte innehåller några icke-tomma punkter.
st_m(geoExpr) Returnerar M-koordinaten för indatapunktsvärdet GEOMETRY eller NULL om punkten är tom eller inte har en M-koordinat.
st_ndims(geoExpr) Returnerar koordinatdimensionen för indata GEOGRAPHY eller GEOMETRY värde.
st_npoints(geoExpr) Returnerar antalet icke-tomma punkter i indata GEOGRAPHY- eller GEOMETRY-värde.
st_numgeometries(geoExpr) Returnerar antalet geometrier i indatavärdet GEOMETRY .
st_numinteriorrings(geoExpr) Returnerar antalet inre ringar i indatapolygon GEOGRAPHY eller GEOMETRY-värdet.
st_pointn(geoExpr, indexExpr) Returnerar den n:e punkten från indatalinjepunkten GEOGRAPHY eller GEOMETRY.
st_startpoint(geoExpr) Returnerar den första punkten i indata GEOGRAPHY eller GEOMETRY värde, om det geospatiala indatavärdet är en linje som inte är tom.
st_x(geoExpr) Returnerar X-koordinaten för indatapunktsvärdet GEOMETRY eller NULL om punkten är tom.
st_xmax(geoExpr) Returnerar den maximala X-koordinaten för indatavärdet GEOMETRY , eller NULL om geometrin är tom.
st_xmin(geoExpr) Returnerar den minsta X-koordinaten för indatavärdet GEOMETRY , eller NULL om geometrin är tom.
st_y(geoExpr) Returnerar Y-koordinaten för indatapunktsvärdet GEOMETRY eller NULL om punkten är tom.
st_ymax(geoExpr) Returnerar den maximala Y-koordinaten för indatavärdet GEOMETRY , eller NULL om geometrin är tom.
st_ymin(geoExpr) Returnerar den minsta Y-koordinaten för indatavärdet GEOMETRY , eller NULL om geometrin är tom.
st_z(geoExpr) Returnerar Z-koordinaten för indatapunktsvärdet GEOMETRY , eller NULL om punkten är tom eller inte har en Z-koordinat.
st_zmax(geoExpr) Returnerar den maximala Z-koordinaten för indatavärdet GEOMETRY , eller NULL om geometrin är tom eller inte har en Z-koordinat.
st_zmin(geoExpr) Returnerar den minsta Z-koordinaten för indatavärdet GEOMETRY , eller NULL om geometrin är tom eller inte har en Z-koordinat.

Editors

Function Description
st_addpoint(geo1Expr, geo2Expr[, indexExpr]) Lägger till en ny punkt till den n:e positionen i indatalinjesträngen GEOGRAPHY eller GEOMETRY värde.
st_flipcoordinates(geoExpr) Växlar X- och Y-koordinaterna för indatavärdet GEOMETRY .
st_multi(geoExpr) Returnerar indata GEOGRAPHY eller GEOMETRY värde som ett motsvarande multi-geospatialt värde.
st_removepoint(geoExpr, indexExpr) Tar bort den n:e punkten från indatalinjerna GEOGRAPHY eller GEOMETRY värdet.
st_reverse(geoExpr) Återställer indata GEOGRAPHY eller GEOMETRY värde.
st_setpoint(geo1Expr, indexExpr, geo2Expr) Anger den n:e punkten för indatalinjerna GEOGRAPHY eller GEOMETRY värdet.

Geometriverifiering

Function Description
st_isvalid(geoExpr) Returnerar sant om indatavärdet GEOMETRY är en giltig geometri i OGC-bemärkelse.

Funktioner för rumsliga referenssystem

Function Description
st_setsrid(geo, srid) Returnerar ett nytt GEOMETRY värde vars SRID är det angivna SRID-värdet.
st_srid(geoExpr) Returnerar SRID för GEOGRAPHY- eller GEOMETRY-indata.
st_transform(geo, srid) Transformerar X- och Y-koordinaterna för indata GEOMETRY från det aktuella koordinatreferenssystemet till det koordinatreferenssystem som beskrivs av det angivna SRID-värdet.

Avståndsrelationer

Function Description
st_dwithin(geoExpr1, geoExpr2, distanceExpr) Returnerar sant om det 2D-kartesiska avståndet mellan de två indatavärdena GEOMETRY är mindre än eller lika med indataavståndsvärdet.

Topologiska relationer

Function Description
st_contains(geo1, geo2) Returnerar true om det första GEOMETRY värdet innehåller det andra GEOMETRY värdet.
st_covers(geoExpr1, geoExpr2) Returnerar true om det första GEOMETRY värdet täcker det andra GEOMETRY värdet.
st_disjoint(geoExpr1, geoExpr2) Returnerar true om de två indatavärdena GEOMETRY är åtskilda.
st_equals(geoExpr1, geoExpr2) Returnerar sant om de två indatavärdena GEOMETRY är geometriskt lika, vilket innebär att de motsvarar samma punktuppsättning.
st_intersects(geoExpr1, geoExpr2) Returnerar sant om de två indatavärdena GEOMETRY korsar varandra.
st_touches(geo1, geo2) Returnerar sant om de två indatavärdena GEOMETRY rör vid varandra.
st_within(geo1, geo2) Returnerar sant om det första GEOMETRY värdet ligger inom det andra GEOMETRY värdet.

Överläggsfunktioner

Function Description
st_difference(geoExpr1, geoExpr2) Returnerar punktuppsättningsskillnaden för de två indatavärdena GEOMETRY som ett 2D-värde GEOMETRY .
st_intersection(geoExpr1, geoExpr2) Returnerar punktuppsättningsskärningspunkten för de två indatavärdena GEOMETRY som ett 2D-värde GEOMETRY .
st_union(geo1, geo2) Returnerar punktuppsättningsunionen för de två indatavärdena GEOMETRY som en 2D-geometri.
st_union_agg(geoCol) Returnerar den punktvisa union av alla geometrier i kolumnen, eller NULL om kolumnen har noll rader eller endast NULL innehåller värden.

Affina Transformationer

Function Description
st_rotate(geoExpr, rotationAngle) Roterar indatavärdet GEOMETRY runt Z-axeln med den angivna rotationsvinkeln (i radianer).
st_scale(geoExpr, xfactor, yfactor[, zfactor]) Skalar indatavärdet GEOMETRY i riktningarna X, Y och, om det anges, Z med hjälp av de angivna skalningsfaktorerna.
st_translate(geoExpr, xoffset, yoffset[, zoffset]) Översätter indatavärdet GEOMETRY i riktningarna X, Y och, om det anges, Z med hjälp av de angivna förskjutningarna.

Geometribearbetning

Function Description
st_buffer(geoExpr, radiusExpr) Returnerar bufferten för indatavärdet GEOMETRY med den angivna radien.
st_centroid(geoExpr) Returnerar centroiden för indatavärdet GEOMETRY som ett 2D-punktsvärde GEOMETRY .
st_concavehull(geoExpr, lengthRatioExpr[, allowHolesExpr]) Returnerar indatavärdets GEOMETRY konkava skrov som ett GEOMETRY värde med det angivna längdförhållandet.
st_convexhull(geoExpr) Returnerar indatavärdets GEOMETRY konvexa skrov som ett GEOMETRY värde.
st_simplify(geo, tolerans) Förenklar indatavärdet GEOMETRY med hjälp av Douglas-Peucker-algoritmen.