Pular para o conteúdo principal

registerJavaUDAF (UDFRegistration)

Registrar uma função agregada definida pelo usuário Java como uma função SQL .

Sintaxe

registerJavaUDAF(name, javaClassName)

Parâmetros

Parâmetro

Tipo

Descrição

name

str

Nome da função agregada definida pelo usuário.

javaClassName

str

Nome totalmente qualificado da classe Java.

Devoluções

None

Exemplos

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