Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
Databricks SQL
Databricks Runtime 19.0 and above
Importante
Esse recurso está em Beta. Os administradores do workspace podem controlar o acesso a esse recurso na página Visualizações . Consulte Gerenciar visualizações do Azure Databricks.
Define as variáveis boolianas que as cláusulas PATTERN e MEASURES de MATCH_RECOGNIZE referenciam e testam.
Syntax
DEFINE { rowPatternVar AS booleanExpr } [, ...]
Parameters
rowPatternVar
Um identificador exclusivo dentro da
DEFINEcláusula. Se você reutilizar um nome, Azure Databricks gerará MATCH_RECOGNIZE_DUPLICATE_PATTERN_VARIABLE.booleanExpr
Uma expressão booliana que não contém uma subconsulta, uma função de agregação ou uma função de janela e não faz referência a um alias de coluna ou coluna diferente daquele
table_referenceque precede aMATCH_RECOGNIZEcláusula.As referências de coluna podem usar as seguintes funções específicas à
DEFINEcláusula:Uma referência de coluna pode ser qualificada por um nome de variável de padrão de linha (
rowPatternVar.colName). Isso seleciona valores de linhas mapeadas para essa variável na correspondência atual. Por exemplo,LAST(down.tstamp)é o carimbo de data/hora da última linha classificada comodown. Referências de coluna não qualificadas referem-se à linha atual na correspondência sem selecionar uma variável de padrão específica.Se uma variável de padrão de linha ainda não for correspondida, a referência de coluna qualificada será avaliada como
NULL.Quando
rowPatternVarnomeia a variável de padrão atualmente sendo testada para a linha,rowPatternVar.colNamerefere-se ao valor da coluna dessa linha e é equivalente a uma não qualificadacolName. 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 de NFA pode avaliar predicados várias vezes por linha. Se você usar um, Azure Databricks aumentará MATCH_RECOGNIZE_NONDETERMINISTIC_DEFINE.Funções de agregação gerais diferentes
FIRST()eLAST()não têm suporte emDEFINE. Se você usar um, Azure Databricks aumentará MATCH_RECOGNIZE_DEFINE_UNSUPPORTED_AGGREGATE.
Condições de erro comuns
- MATCH_RECOGNIZE_DEFINE_UNSUPPORTED_AGGREGATE
- MATCH_RECOGNIZE_DUPLICATE_PATTERN_VARIABLE
- MATCH_RECOGNIZE_DEFINIÇÃO_NÃO_DETERMINÍSTICA