ip_cidr_contains

Dotyczy:sprawdzanie oznaczone jako tak Databricks Runtime 18.2 lub nowsze

Ważna

Ta funkcja jest dostępna w wersji beta. Administratorzy obszaru roboczego mogą kontrolować dostęp do tej funkcji ze strony Podglądy . Zobacz Zarządzanie wersjami zapoznawczami usługi Azure Databricks.

Zwraca wartość True , jeśli adres IP lub blok CIDR jest zawarty w innym bloku CIDR, False w przeciwnym razie.

Aby uzyskać odpowiednią funkcję SQL, zobacz ip_cidr_contains funkcja.

Syntax

from pyspark.databricks.sql import functions as dbf

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

Parameters

Parameter Typ Description
col1 pyspark.sql.Column lub str Wartość STRING lub BINARY reprezentująca prawidłowy blok CIDR IPv4 lub IPv6.
col2 pyspark.sql.Column lub str Wartość STRING lub BINARY reprezentująca prawidłowy adres IPv4 lub IPv6 lub blok CIDR.

Examples

Przykład 1: Sprawdź, czy adres IP znajduje się w bloku 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)]

Przykład 2: Sprawdź, czy mniejszy blok CIDR znajduje się w większym bloku CIDR.

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)]

Przykład 3: None dane wejściowe zwracają wartość 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)]