ip_cidr_contains
S’applique à : Databricks Runtime 18.2 et versions ultérieures
Bêta
Cette fonctionnalité est en Bêta. Les administrateurs du Workspace peuvent contrôler l'accès à cette fonctionnalité à partir de la page Previews . Consultez Gérer les aperçus Databricks.
Retourne True si une adresse IP ou un bloc CIDR est contenu dans un autre bloc CIDR, False sinon.
Pour la fonction SQL correspondante, consultez la fonctionip_cidr_contains.
Syntaxe
from pyspark.databricks.sql import functions as dbf
dbf.ip_cidr_contains(col1=<col1>, col2=<col2>)
parameter
parameter | Type | Description |
|---|---|---|
|
| Une valeur STRING ou BINARY représentant un bloc CIDR IPv4 ou IPv6 valide. |
|
| Une valeur STRING ou BINARY représentant une adresse IPv4 ou IPv6 ou un bloc CIDR valide. |
Exemples
Exemple 1 : Vérifiez si une adresse IP est contenue dans un bloc 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)]
Exemple 2 : vérifiez si un bloc CIDR plus petit est contenu dans un bloc CIDR plus grand.
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)]
Exemple 3 : None entrée renvoie 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)]