Klausa DEFINE 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.

Mendefinisikan variabel boolean yang klausul POLA dan PENGUKURAN referensi dan pengujian MATCH_RECOGNIZE .

Syntax

DEFINE { rowPatternVar AS booleanExpr } [, ...]

Parameters

  • rowPatternVar

    Pengidentifikasi yang unik dalam DEFINE klausa. Jika Anda menggunakan kembali nama, Azure Databricks akan menaikkan MATCH_RECOGNIZE_DUPLICATE_PATTERN_VARIABLE.

  • booleanExpr

    Ekspresi boolean yang tidak berisi subkueri, fungsi agregat, atau fungsi jendela, dan tidak mereferensikan alias kolom atau kolom selain dari table_reference yang mendahului MATCH_RECOGNIZE klausa.

    Referensi kolom dapat menggunakan fungsi berikut khusus untuk DEFINE klausa:

    Referensi kolom dapat dikualifikasi dengan nama variabel pola baris (rowPatternVar.colName). Ini memilih nilai dari baris yang dipetakan ke variabel tersebut dalam kecocokan saat ini. Misalnya, LAST(down.tstamp) adalah tanda waktu baris terakhir yang diklasifikasikan sebagai down. Referensi kolom yang tidak memenuhi syarat mengacu pada baris saat ini dalam kecocokan tanpa memilih variabel pola tertentu.

    Jika variabel pola baris belum cocok, referensi kolom yang memenuhi syarat mengevaluasi ke NULL.

    Saat rowPatternVar memberi nama variabel pola yang saat ini sedang diuji untuk baris, rowPatternVar.colName mengacu pada nilai kolom baris tersebut dan setara dengan yang tidak memenuhi syarat colName. Saat rowPatternVar memberi nama variabel pola yang berbeda, rowPatternVar.colName membaca nilai dari baris yang sudah dipetakan ke variabel tersebut.

    Fungsi nondeterministik seperti rand() dan uuid() tidak diizinkan dalam DEFINE predikat karena simulasi NFA dapat mengevaluasi predikat beberapa kali per baris. Jika Anda menggunakannya, Azure Databricks akan menaikkan MATCH_RECOGNIZE_NONDETERMINISTIC_DEFINE.

    Fungsi agregat umum selain FIRST() dan LAST() tidak didukung di DEFINE. Jika Anda menggunakannya, Azure Databricks akan menaikkan MATCH_RECOGNIZE_DEFINE_UNSUPPORTED_AGGREGATE.

Kondisi kesalahan umum