Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Registra un Python función de tabla definida por el usuario como una función de tabla SQL.
Sintaxis
register(name, f)
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
name |
str | Nombre de la función de tabla definida por el usuario en instrucciones SQL. |
f |
UserDefinedTableFunction |
Función de tabla definida por el usuario. |
Devoluciones
UserDefinedTableFunction
Notas
Spark usa el tipo de valor devuelto de la función de tabla definida por el usuario determinada como el tipo de valor devuelto de la función registrada.
Para registrar una función de tabla no determinista Python, cree primero una función de tabla definida por el usuario no determinista y, a continuación, regístrela como una función SQL.
Ejemplos
from pyspark.sql.functions import udtf
@udtf(returnType="c1: int, c2: int")
class PlusOne:
def eval(self, x: int):
yield x, x + 1
spark.udtf.register(name="plus_one", f=PlusOne)
spark.sql("SELECT * FROM plus_one(1)").collect()
# [Row(c1=1, c2=2)]
# Use it with a lateral join.
spark.sql("SELECT * FROM VALUES (0, 1), (1, 2) t(x, y), LATERAL plus_one(x)").collect()
# [Row(x=0, y=1, c1=0, c2=1), Row(x=1, y=2, c1=1, c2=2)]