MATCH_RECOGNIZE için PATTERN yan tümcesi

Şunun için geçerlidir:evet olarak işaretlendi Databricks SQL denetimi evet olarak işaretlendi Databricks Runtime 19.0 ve üzeri

Important

Bu özellik Beta sürümündedir. Çalışma alanı yöneticileri Bu özelliğe erişimi Önizlemeler sayfasından denetleyebilir. Bkz. Azure Databricks önizlemelerini yönetme.

MATCH_RECOGNIZE işleminde eşleşecek deseni belirtir.

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

Desen birincil

  • variable

    DEFINE yan tümcesinde tanımlanan değişken. Tanımlanmamış bir değişken tüm satırlar ile eşleşir.

  • $

    Bölümün sonu.

  • ^

    Bölümün başlangıcı.

    Bu sürümde ^ ve $ yalnızca en üst düzey desenin başında veya sonunda desteklenir. Örneğin desteklenir ^ A B $ , ancak ve gibi dal başına yer işaretleri gibi A ^ B orta sıralı tutturucular (^ A) | (B $) desteklenmez.

Desen işleci

  • ( [ row_pattern ] )

    Önceliği geçersiz kılan bir gruplandırma.

  • PERMUTE ( row_pattern [, ...] )

    Herhangi bir sıra permütasyonundaki satır desenlerini eşleştirir. PERMUTE en az iki desen gerektirir. İkiden az belirtirseniz, Azure Databricks MATCH_RECOGNIZE_PERMUTE_TOO_FEW_PATTERNS yükseltir. Desteklenen üst sınırdan daha fazlasını belirtirseniz, Azure Databricks MATCH_RECOGNIZE_PERMUTE_TOO_MANY_PATTERNS yükseltir.

  • row_pattern | row_pattern

    Satır desenlerinden biriyle eşleşir.

  • row_pattern row_pattern

    Satır desenleri dizisiyle eşleşir.

Desen niceleyicisi

ne sıklıkta eşleşmesi pattern_primary gerektiğini belirtir:

  • *

    Sıfır veya daha fazla kez.

  • +

    Bir veya daha fazla kez.

  • ?

    En fazla bir kere.

  • { n }

    Tam olarak n zaman. ndeğerinden büyük 0bir INTEGER değişmez değer olmalıdır.

  • { min , [ max ] }

    En az min kez ve en çok max zaman belirtildiyse.

  • { , max }

    En fazla max birkaç kez.

Bir niceleyiciyi atlarsanız varsayılan değer: tam olarak bir eşleşmedir { 1 }.

Yaygın hata koşulları