メインコンテンツまでスキップ

try_ip_as_binary

対象: はいにチェックマーク Databricks Runtime 18.2以降

備考

ベータ版

この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。

IPアドレスまたはCIDRブロックの正規バイナリ表現を返します。入力が無効な場合、エラーを発生させる代わりにNoneを返します。

対応する SQL 関数については、 try_ip_as_binary関数を参照してください。

構文

Python
from pyspark.databricks.sql import functions as dbf

dbf.try_ip_as_binary(col=<col>)

パラメーター

パラメーター

Type

説明

col

pyspark.sql.Column または str

有効な IPv4 アドレスまたは IPv6 アドレス、あるいは CIDR ブロックを表す文字列またはバイナリ値。

例1 :IPv4アドレスをバイナリに変換する。

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

例2 :IPv6アドレスをバイナリに変換する。

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

例3 :CIDRブロックをバイナリに変換する。

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

例4 :無効な入力はNoneを返します。

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

例 5 : None入力はNoneを返します。

Python
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()
Output
[Row(result=None)]
このページの見出し