try_ip_as_binary

적용 대상:예 Databricks Runtime 18.2 이상으로 표시된 확인

Important

이 기능은 베타 버전으로 제공됩니다. 작업 영역 관리자는 미리 보기 페이지에서 이 기능에 대한 액세스를 제어할 수 있습니다. Azure Databricks 미리 보기 관리를 참조하세요.

IP 주소 또는 CIDR 블록의 정식 이진 표현을 반환합니다. 입력이 잘못된 경우 오류를 발생시키는 대신 반환 None 합니다.

해당 SQL 함수는 함수를 참조 try_ip_as_binary 하세요.

Syntax

from pyspark.databricks.sql import functions as dbf

dbf.try_ip_as_binary(col=<col>)

Parameters

매개 변수 Type Description
col pyspark.sql.Column 또는 str 유효한 IPv4 또는 IPv6 주소 또는 CIDR 블록을 나타내는 STRING 또는 BINARY 값입니다.

예제

예제 1: IPv4 주소를 이진으로 변환합니다.

from pyspark.databricks.sql import functions as dbf
from pyspark.sql.functions import hex
df = spark.createDataFrame([('192.168.1.1',)], ['ip'])
df.select(hex(dbf.try_ip_as_binary('ip')).alias('result')).collect()
[Row(result='C0A80101')]

예제 2: IPv6 주소를 이진으로 변환합니다.

from pyspark.databricks.sql import functions as dbf
from pyspark.sql.functions import hex
df = spark.createDataFrame([('2001:db8::1',)], ['ip'])
df.select(hex(dbf.try_ip_as_binary('ip')).alias('result')).collect()
[Row(result='20010DB8000000000000000000000001')]

예제 3: CIDR 블록을 이진으로 변환합니다.

from pyspark.databricks.sql import functions as dbf
from pyspark.sql.functions import hex
df = spark.createDataFrame([('192.168.1.5/24',)], ['cidr'])
df.select(hex(dbf.try_ip_as_binary('cidr')).alias('result')).collect()
[Row(result='C0A8010018')]

예제 4: 잘못된 입력이 반환됩니다 None.

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('invalid.ip',)], ['ip'])
df.select(dbf.try_ip_as_binary('ip').alias('result')).collect()
[Row(result=None)]

예제 5: None 입력이 반환됩니다 None.

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