Aller au contenu principal

ip_cidr_contains

S’applique à : coché oui Databricks Runtime 18.2 et versions ultérieures

info

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

Python
from pyspark.databricks.sql import functions as dbf

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

parameter

parameter

Type

Description

col1

pyspark.sql.Column OU str

Une valeur STRING ou BINARY représentant un bloc CIDR IPv4 ou IPv6 valide.

col2

pyspark.sql.Column OU str

Une valeur STRING ou BINARY représentant une adresse IPv4 ou IPv6 ou un bloc CIDR valide.

parameter

Type

Description

col1

pyspark.sql.Column OU str

Une valeur STRING ou BINARY représentant un bloc CIDR IPv4 ou IPv6 valide.

col2

pyspark.sql.Column OU str

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.

Python
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()
Output
[Row(result=True)]

Exemple 2 : vérifiez si un bloc CIDR plus petit est contenu dans un bloc CIDR plus grand.

Python
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()
Output
[Row(result=True)]

Exemple 3 : None entrée renvoie None.

Python
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()
Output
[Row(result=None)]