st_nrings

Se aplica a:comprobar sí marcado Databricks Runtime 18.1 y versiones posteriores

Importante

La compatibilidad con los valores GEOGRAPHY está en versión preliminar pública. La compatibilidad con valores GEOMETRY está disponible con carácter general.

Devuelve el número total de anillos del polígono de entrada o multipolygon, incluidos los anillos exteriores e interiores. Para un multipolígono, devuelve la suma de todos los anillos en todos los polígonos.

Para obtener la función SQL de Databricks correspondiente, consulte st_nrings function.

Sintaxis

from pyspark.databricks.sql import functions as dbf

dbf.st_nrings(col=<col>)

Parámetros

Parámetro Tipo Descripción
col pyspark.sql.Column o str Un valor Geography o Geometry.

Ejemplos

GEOMETRÍA de polígono 2D vacía:

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('POLYGON EMPTY',)], ['wkt'])
df.select(dbf.st_nrings(dbf.st_geomfromtext('wkt')).alias('result')).collect()
[Row(result=0)]

GEOGRAFÍA de polígono 4D con dos anillos (un exterior, un interior):

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('POLYGON ZM ((0 0 111 -11,10 0 222 -22,0 10 333 -33,0 0 444 -44),(1 1 555 -55,4 1 666 -66,1 4 777 -77,1 1 888 -88))',)], ['wkt'])
df.select(dbf.st_nrings(dbf.st_geogfromtext('wkt')).alias('result')).collect()
[Row(result=2)]

GEOMETRY multipolygon 3DZ vacía:

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('MULTIPOLYGON Z EMPTY',)], ['wkt'])
df.select(dbf.st_nrings(dbf.st_geomfromtext('wkt', 4326)).alias('result')).collect()
[Row(result=0)]

GEOGRAFÍA multipolygona con cuatro anillos en dos polígonos:

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('MULTIPOLYGON (((0 0,10 0,10 10,0 10,0 0),(1 1,4 1,4 4,1 4,1 1),(5 5,6 5,6 6,5 6,5 5)),((20 20,30 20,30 30,20 30,20 20)))',)], ['wkt'])
df.select(dbf.st_nrings(dbf.st_geogfromtext('wkt')).alias('result')).collect()
[Row(result=4)]