PATTERN záradék MATCH_RECOGNIZE

A következőre vonatkozik:yes Databricks SQL check mark yes Databricks Runtime 19.0 és újabb

Important

Ez a funkció bétaverzióban érhető el. A munkaterület rendszergazdái az Előnézetek lapon szabályozhatják a funkcióhoz való hozzáférést. Lásd: Az Azure Databricks előzetes verziójának kezelése.

Egy MATCH_RECOGNIZE műveletben egyeztetendő mintát adja meg.

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

Elsődleges minta

  • variable

    A DEFINE záradékban definiált változó. Egy nem definiált változó az összes sorra egyezik.

  • $

    A partíció vége.

  • ^

    A partíció kezdete.

    Ebben a kiadásban, ^ és $ csak a felső szintű minta kezdő vagy záró pozíciójában támogatottak. Például támogatott, ^ A B $ de a szekvenciák közötti horgonyok, például A ^ B az ágonkénti horgonyok (^ A) | (B $) nem támogatottak.

Minta operátor

  • ( [ row_pattern ] )

    Az elsőbbséget felülíró csoportosítás.

  • PERMUTE ( row_pattern [, ...] )

    Egyezik a sormintákkal a sorrend bármely variációjában. PERMUTE legalább két mintát igényel. Ha kettőnél kevesebbet ad meg, Azure Databricks MATCH_RECOGNIZE_PERMUTE_TOO_FEW_PATTERNS. Ha a támogatott maximális értéknél többet ad meg, Azure Databricks MATCH_RECOGNIZE_PERMUTE_TOO_MANY_PATTERNS.

  • row_pattern | row_pattern

    Egyezik a sorminták egyikével.

  • row_pattern row_pattern

    Egy sorminták sorozatának felel meg.

Mintakvantáló

Meghatározza, hogy milyen gyakran kell egyeznie:pattern_primary

  • *

    Nulla vagy több alkalommal.

  • +

    Egy vagy több alkalommal.

  • ?

    Legfeljebb egyszer.

  • { n }

    Pontosan n az időket. n A literálnak nagyobbnak kell lennie INTEGER , mint 0a .

  • { min , [ max ] }

    Legalább min időnként, és ha meg van adva, legfeljebb max idő.

  • { , max }

    Nem többször max .

Ha kihagy egy kvantálót, az alapértelmezett érték { 1 }: pontosan egy egyezés.

Gyakori hibafeltételek