通过


try_divide

返回 dividend/divisor。 它始终执行浮点除法。 如果为 0,则其结果始终为 null divisor 。 支持 Spark Connect。

有关相应的 Databricks SQL 函数,请参阅 try_divide 函数

Syntax

from pyspark.databricks.sql import functions as dbf

dbf.try_divide(left=<left>, right=<right>)

参数

参数 类型 Description
left pyspark.sql.Column or column name 股利
right pyspark.sql.Column or column name 因子

例子

from pyspark.databricks.sql import functions as dbf
spark.createDataFrame(
    [(6000, 15), (1990, 2), (1234, 0)], ["a", "b"]
).select("*", dbf.try_divide("a", "b")).show()
+----+---+----------------+
|   a|  b|try_divide(a, b)|
+----+---+----------------+
|6000| 15|           400.0|
|1990|  2|           995.0|
|1234|  0|            NULL|
+----+---+----------------+

from pyspark.databricks.sql import functions as dbf
df = spark.range(4).select(dbf.make_interval(dbf.lit(1)).alias("itvl"), "id")
df.select("*", dbf.try_divide("itvl", "id")).show()
+-------+---+--------------------+
|   itvl| id|try_divide(itvl, id)|
+-------+---+--------------------+
|1 years|  0|                NULL|
|1 years|  1|             1 years|
|1 years|  2|            6 months|
|1 years|  3|            4 months|
+-------+---+--------------------+