ip_cidr_contains

Se aplica a:check marcado yes Databricks Runtime 18.2 y versiones posteriores

Important

Esta característica se encuentra en su versión beta. Los administradores del área de trabajo pueden controlar el acceso a esta característica desde la página Vistas previas . Consulte Administrar versiones preliminares de Azure Databricks.

Devuelve True si una dirección IP o un bloque CIDR se encuentra dentro de otro bloque CIDR; de lo contrario, False .

Para obtener la función SQL correspondiente, consulte ip_cidr_contains función .

Syntax

from pyspark.databricks.sql import functions as dbf

dbf.ip_cidr_contains(col1=<col1>, col2=<col2>)

Parameters

Parámetro Tipo Description
col1 pyspark.sql.Column o str Valor STRING o BINARY que representa un bloque CIDR IPv4 o IPv6 válido.
col2 pyspark.sql.Column o str Valor STRING o BINARY que representa una dirección IPv4 o IPv6 válida o un bloque CIDR.

Ejemplos

Ejemplo 1: Compruebe si una dirección IP está contenida en un bloque CIDR.

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('192.168.1.0/24', '192.168.1.100')], ['cidr', 'ip'])
df.select(dbf.ip_cidr_contains('cidr', 'ip').alias('result')).collect()
[Row(result=True)]

Ejemplo 2: Compruebe si un bloque CIDR más pequeño está contenido en un bloque CIDR mayor.

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('192.168.0.0/16', '192.168.1.0/24')], ['cidr', 'needle'])
df.select(dbf.ip_cidr_contains('cidr', 'needle').alias('result')).collect()
[Row(result=True)]

Ejemplo 3: None la entrada devuelve None.

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(None, '192.168.1.1')], 'cidr: string, ip: string')
df.select(dbf.ip_cidr_contains('cidr', 'ip').alias('result')).collect()
[Row(result=None)]