Cláusula PATTERN para MATCH_RECOGNIZE

Se aplica a:check marcado yes Comprobación de SQL de Databricks marcada como sí 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.

Especifica el patrón que debe coincidir en una operación de MATCH_RECOGNIZE .

Syntax

PATTERN ( row_pattern )
row_pattern
  { { pattern_primary | pattern_operator } [ pattern_quantifier ] }

pattern_primary
  { variable
  | $
  | ^ }

pattern_operator
  { ( [ row_pattern ] )
  | PERMUTE ( row_pattern [, ...] )
  | row_pattern | row_pattern
  | row_pattern row_pattern }

pattern_quantifier
  { *
  | +
  | ?
  | { n }
  | { min , [ max ] }
  | { , max } }

Parameters

Patrón principal

  • variable

    Variable definida en la cláusula DEFINE . Una variable no definida coincide con todas las filas.

  • $

    Final de la partición.

  • ^

    Principio de la partición.

    En esta versión, ^ y $ solo se admiten en la posición inicial o final del patrón de nivel superior. Por ejemplo, ^ A B $ se admite, pero no se admiten anclajes de secuencia media, como A ^ B y por rama, como (^ A) | (B $) .

Operador Pattern

  • ( [ row_pattern ] )

    Agrupación que invalida la prioridad.

  • PERMUTE ( row_pattern [, ...] )

    Coincide con los patrones de fila en cualquier permutación de orden. PERMUTE requiere al menos dos patrones. Si especifica menos de dos, Azure Databricks genera MATCH_RECOGNIZE_PERMUTE_TOO_FEW_PATTERNS. Si especifica más del máximo admitido, Azure Databricks genera MATCH_RECOGNIZE_PERMUTE_TOO_MANY_PATTERNS.

  • row_pattern | row_pattern

    Coincide con cualquiera de los patrones de fila.

  • row_pattern row_pattern

    Coincide con una secuencia de patrones de fila.

Cuantificador de patrones

Especifica la frecuencia con la pattern_primary que debe coincidir:

  • *

    Cero o más veces.

  • +

    Una o varias veces.

  • ?

    Como máximo una vez.

  • { n }

    Exactamente n las veces. n debe ser un INTEGER literal mayor que 0.

  • { min , [ max ] }

    Al menos min veces, y si se especifican hasta max veces.

  • { , max }

    No más de max veces.

Si omite un cuantificador, el valor predeterminado es { 1 }: exactamente una coincidencia.

Condiciones de error comunes