Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:
Databricks SQL
Runtime 19.0 e superiores
Importante
Este recurso está em versão Beta. Os administradores do espaço de trabalho podem controlar o acesso a esse recurso na página Visualizações . Ver Gerir as pré-visualizações de Azure Databricks.
Define as variáveis booleanas que as cláusulas PATTERN e MEASURES de MATCH_RECOGNIZE referenciam e testam.
Sintaxe
DEFINE { rowPatternVar AS booleanExpr } [, ...]
Parameters
rowPatternVar
Um identificador que é único dentro da
DEFINEcláusula. Se reutilizares um nome, Azure Databricks aumenta MATCH_RECOGNIZE_DUPLICATE_PATTERN_VARIABLE.booleanExpr
Uma expressão booleana que não contém uma subconsulta, função agregada ou função janela, e que não faz referência a uma coluna ou alias de coluna que não sejam os do
table_referenceque precede aMATCH_RECOGNIZEcláusula.As referências de coluna podem usar as seguintes funções específicas da
DEFINEoração:Uma referência de coluna pode ser qualificada por um nome de variável padrão de linhas (
rowPatternVar.colName). Isto seleciona valores das linhas mapeadas para essa variável na correspondência atual. Por exemplo,LAST(down.tstamp)é o carimbo temporal da última linha classificado comodown. Referências de colunas não qualificadas referem-se à linha atual na correspondência sem selecionar uma variável de padrão específica.Se uma variável do padrão de linhas ainda não for correspondida, a referência qualificada da coluna avalia para
NULL.Quando
rowPatternVarnomeia a variável padrão atualmente testada para a linha,rowPatternVar.colNamerefere-se ao valor da coluna dessa linha e é equivalente a um não qualificadocolName. QuandorowPatternVarnomeia uma variável de padrão diferente,rowPatternVar.colNamelê valores de linhas já mapeadas para essa variável.Funções não determinísticas como
rand()euuid()não são permitidas emDEFINEpredicados porque a simulação NFA pode avaliar predicados várias vezes por linha. Se usares um, Azure Databricks aumenta MATCH_RECOGNIZE_NONDETERMINISTIC_DEFINE.Funções agregadas gerais diferentes de
FIRST()eLAST()não são suportadas emDEFINE. Se usares um, Azure Databricks aumenta MATCH_RECOGNIZE_DEFINE_UNSUPPORTED_AGGREGATE.
Condições de erro comuns
- MATCH_RECOGNIZE_DEFINE_UNSUPPORTED_AGGREGATE
- MATCH_RECOGNIZE_DUPLICATE_PATTERN_VARIABLE
- MATCH_RECOGNIZE_NONDETERMINISTIC_DEFINE