Klausa POLA untuk MATCH_RECOGNIZE

Berlaku untuk:check ditandai ya pemeriksaan Databricks SQL ditandai ya Databricks Runtime 19.0 ke atas

Important

Fitur ini ada di Beta. Admin ruang kerja dapat mengontrol akses ke fitur ini dari halaman Pratinjau . Lihat Kelola Pratinjau Azure Databricks.

Menentukan pola yang akan dicocokkan dalam operasi 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

Pola primer

  • variable

    Variabel yang ditentukan dalam klausa DEFINE . Variabel yang tidak terdefinisi cocok dengan semua baris.

  • $

    Akhir partisi.

  • ^

    Awal partisi.

    Dalam rilis ini, ^ dan $ hanya didukung pada posisi terdepan atau berikutnya dari pola tingkat atas. Misalnya, ^ A B $ didukung, tetapi jangkar pertengahan urutan seperti A ^ B dan jangkar per cabang seperti (^ A) | (B $) tidak didukung.

Operator pola

  • ( [ row_pattern ] )

    Pengelompokan yang mengambil alih prioritas.

  • PERMUTE ( row_pattern [, ...] )

    Mencocokkan pola baris dalam setiap permutasi urutan. PERMUTE membutuhkan setidaknya dua pola. Jika Anda menentukan kurang dari dua, Azure Databricks akan menaikkan MATCH_RECOGNIZE_PERMUTE_TOO_FEW_PATTERNS. Jika Anda menentukan lebih dari maksimum yang didukung, Azure Databricks akan menaikkan MATCH_RECOGNIZE_PERMUTE_TOO_MANY_PATTERNS.

  • row_pattern | row_pattern

    Cocok dengan salah satu pola baris.

  • row_pattern row_pattern

    Cocok dengan urutan pola baris.

Kuantifier pola

Menentukan seberapa sering pattern_primary harus dicocokkan:

  • *

    Nol kali atau lebih.

  • +

    Satu atau beberapa kali.

  • ?

    Paling banyak sekali.

  • { n }

    Tepat n waktu. n harus lebih INTEGER besar dari 0.

  • { min , [ max ] }

    Setidaknya min berkali-kali, dan jika ditentukan hingga max waktu.

  • { , max }

    Tidak lebih dari max waktu.

Jika Anda menghilangkan kuantifier, defaultnya adalah { 1 }: tepat satu kecocokan.

Kondisi kesalahan umum