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.
Se aplica a:
Comprobación de SQL de Databricks
Databricks Runtime 19.0 y versiones posteriores
Importante
Esta característica se encuentra en su versión beta. Los administradores del área de trabajo pueden controlar el acceso a esta característica desde la página Vistas previas . Consulte Administrar versiones preliminares de Azure Databricks.
Define las variables booleanas que las cláusulas PATTERN y MEASURES de MATCH_RECOGNIZE referencia y prueba.
Syntax
DEFINE { rowPatternVar AS booleanExpr } [, ...]
Parameters
rowPatternVar
Identificador único dentro de la
DEFINEcláusula . Si reutiliza un nombre, Azure Databricks genera MATCH_RECOGNIZE_DUPLICATE_PATTERN_VARIABLE.booleanExpr
Una expresión booleana que no contiene una subconsulta, una función de agregado o una función de ventana, y no hace referencia a un alias de columna o columna distinto de los que
table_referencepreceden a laMATCH_RECOGNIZEcláusula .Las referencias de columna pueden usar las siguientes funciones específicas de la
DEFINEcláusula :Una referencia de columna se puede calificar mediante un nombre de variable de patrón de fila (
rowPatternVar.colName). Esto selecciona los valores de las filas asignadas a esa variable en la coincidencia actual. Por ejemplo,LAST(down.tstamp)es la marca de tiempo de la última fila clasificada comodown. Las referencias de columna no calificadas hacen referencia a la fila actual de la coincidencia sin seleccionar una variable de patrón específica.Si aún no coincide una variable de patrón de fila, la referencia de columna calificada se evalúa como
NULL.Cuando
rowPatternVarasigna nombres a la variable de patrón que se está probando actualmente para la fila,rowPatternVar.colNamehace referencia al valor de columna de esa fila y es equivalente a un objeto no calificadocolName. Cuando asignarowPatternVarun nombre a una variable de patrón diferente,rowPatternVar.colNamelee los valores de las filas que ya están asignadas a esa variable.Las funciones no deterministas como
rand()yuuid()no se permiten enDEFINEpredicados porque la simulación de NFA puede evaluar predicados varias veces por fila. Si usa uno, Azure Databricks genera MATCH_RECOGNIZE_NONDETERMINISTIC_DEFINE.Las funciones de agregado generales distintas
FIRST()de yLAST()no se admiten enDEFINE. Si usa uno, Azure Databricks genera MATCH_RECOGNIZE_DEFINE_UNSUPPORTED_AGGREGATE.
Condiciones de error comunes
- MATCH_RECOGNIZE_DEFINE_UNSUPPORTED_AGGREGATE
- MATCH_RECOGNIZE_DUPLICATE_PATTERN_VARIABLE
- MATCH_RECOGNIZE_NONDETERMINISTIC_DEFINE