ip_as_binary
対象: Databricks Runtime 18.2以降
備考
ベータ版
この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。
IPアドレスまたはCIDRブロックの正規バイナリ表現を返します。
対応する SQL 関数については、 ip_as_binary関数を参照してください。
構文
Python
from pyspark.databricks.sql import functions as dbf
dbf.ip_as_binary(col=<col>)
パラメーター
パラメーター | Type | 説明 |
|---|---|---|
|
| 有効な 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.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.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.ip_as_binary('cidr')).alias('result')).collect()
Output
[Row(result='C0A8010018')]
例4 : None入力はNoneを返します。
Python
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(None,)], 'ip: string')
df.select(dbf.ip_as_binary('ip').alias('result')).collect()
Output
[Row(result=None)]