Udostępnij przez


try_to_geography

Ważne

Ta funkcja jest dostępna w publicznej wersji testowej.

Analizuje wejściową wartość BINARNą lub ciągową i zwraca odpowiadającą mu wartość Geography . None jest zwracany, jeśli dane wejściowe są nieprawidłowe.

Aby uzyskać odpowiednią funkcję SQL usługi Databricks, zobacz try_to_geography funkcja.

Składnia

from pyspark.databricks.sql import functions as dbf

dbf.try_to_geography(col=<col>)

Parametry

Parameter Typ Description
col pyspark.sql.Column lub str Wartość ciągu w formacie WKT lub GeoJSON albo wartość BINarna w formacie WKB reprezentująca wartość Geography .

Przykłady

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('POINT Z (3 4 5)',)], ['wkt'])
df.select(dbf.st_asewkt(dbf.try_to_geography('wkt')).alias('result')).collect()
[Row(result='SRID=4326;POINT Z (3 4 5)')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('{"type":"MultiPoint","coordinates":[[3,4,5]]}',)], ['geojson'])
df.select(dbf.st_asewkt(dbf.try_to_geography('geojson')).alias('result')).collect()
[Row(result='SRID=4326;MULTIPOINT Z ((3 4 5))')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(bytes.fromhex('01ef0300000100000001e9030000000000000000084000000000000010400000000000001440'),)], ['wkb'])
df.select(dbf.st_asewkt(dbf.try_to_geography('wkb')).alias('result')).collect()
[Row(result='SRID=4326;GEOMETRYCOLLECTION Z (POINT Z (3 4 5))')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('invalid wkt',)], ['wkt'])
df.select(dbf.st_asewkt(dbf.try_to_geography('wkt')).alias('result')).collect()
[Row(result=None)]