Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:
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)]