Aller au contenu principal

try_ip_as_binary

S’applique à : coché oui Databricks Runtime 18.2 et versions ultérieures

info

Bêta

Cette fonctionnalité est en Bêta. Les administrateurs du Workspace peuvent contrôler l'accès à cette fonctionnalité à partir de la page Previews . Consultez Gérer les aperçus Databricks.

Renvoie la représentation binaire canonique d'une adresse IP ou d'un bloc CIDR. Retourne None au lieu de lever une erreur si l'entrée est invalide.

Pour la fonction SQL correspondante, consultez la fonctiontry_ip_as_binary.

Syntaxe

Python
from pyspark.databricks.sql import functions as dbf

dbf.try_ip_as_binary(col=<col>)

parameter

parameter

Type

Description

col

pyspark.sql.Column OU str

Une valeur STRING ou BINARY représentant une adresse IPv4 ou IPv6 ou un bloc CIDR valide.

parameter

Type

Description

col

pyspark.sql.Column OU str

Une valeur STRING ou BINARY représentant une adresse IPv4 ou IPv6 ou un bloc CIDR valide.

Exemples

Exemple 1 : Convertir une adresse IPv4 en binaire.

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

Exemple 2 : Convertir une adresse IPv6 en binaire.

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

Exemple 3 : Convertir un bloc CIDR en binaire.

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

Exemple 4 : L'entrée non valide renvoie 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)]

**Exemple 5** : None l'entrée None renvoie.

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