ip_cidr_contains

Gäller för:check markerat ja Databricks Runtime 18.2 och senare

Viktigt!

Den här funktionen finns i Beta. Arbetsyteadministratörer kan styra åtkomsten till den här funktionen från sidan Förhandsversioner . Se Hantera förhandsversioner av Azure Databricks.

Returnerar True om en IP-adress eller ett CIDR-block finns i ett annat CIDR-block, False annars.

För motsvarande SQL-funktion, se ip_cidr_contains funktion.

Syntax

from pyspark.databricks.sql import functions as dbf

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

Parameters

Parameter Type Description
col1 pyspark.sql.Column eller str Ett STRING- eller BINÄRt värde som representerar ett giltigt IPv4- eller IPv6 CIDR-block.
col2 pyspark.sql.Column eller str Ett STRING- eller BINÄRt värde som representerar en giltig IPv4- eller IPv6-adress eller ett CIDR-block.

Exempel

Exempel 1: Kontrollera om en IP-adress finns i ett CIDR-block.

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

Exempel 2: Kontrollera om ett mindre CIDR-block finns i ett större CIDR-block.

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

Exempel 3: None indata returnerar 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)]