Condividi tramite


registerJavaUDAF (UDFRegistration)

Registra una funzione di aggregazione Java definita dall'utente come funzione SQL.

Sintassi

registerJavaUDAF(name, javaClassName)

Parametri

Parametro Tipo Descrizione
name str Nome della funzione di aggregazione definita dall'utente.
javaClassName str Nome completo della classe Java.

Restituzioni

None

Examples

spark.udf.registerJavaUDAF("javaUDAF", "test.org.apache.spark.sql.MyDoubleAvg")
df = spark.createDataFrame([(1, "a"), (2, "b"), (3, "a")], ["id", "name"])
df.createOrReplaceTempView("df")
q = "SELECT name, javaUDAF(id) as avg from df group by name order by name desc"
spark.sql(q).collect()
# [Row(name='b', avg=102.0), Row(name='a', avg=102.0)]