Partilhar via


tentar_a_geografia

Importante

Este recurso está no Public Preview.

Interpreta o valor de entrada BINARY ou string e devolve o valor de Geografia correspondente. None é devolvido se a entrada for inválida.

Para a função SQL do Databricks correspondente, veja try_to_geography função.

Sintaxe

from pyspark.databricks.sql import functions as dbf

dbf.try_to_geography(col=<col>)

Parâmetros

Parâmetro Tipo Description
col pyspark.sql.Column ou str Um valor do tipo string em formato WKT ou GeoJSON, ou um valor BINARY em formato WKB representando um valor do tipo Geografia.

Examples

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)]