MATCH_RECOGNIZE için DEFINE 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.

PATTERN ve MEASURES yan tümcelerinin başvuru ve test MATCH_RECOGNIZE boole değişkenlerini tanımlar.

Syntax

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

Parameters

  • rowPatternVar

    Yan tümcesi DEFINE içinde benzersiz bir tanımlayıcı. Bir adı yeniden kullandığınızda, Azure Databricks MATCH_RECOGNIZE_DUPLICATE_PATTERN_VARIABLE yükseltir.

  • booleanExpr

    Alt sorgu, toplama işlevi veya pencere işlevi içermeyen ve yan tümceden table_reference öncekilerden MATCH_RECOGNIZE başka bir sütuna veya sütun diğer adına başvurmayan boole ifadesi.

    Sütun başvuruları yan tümcesine DEFINE özgü aşağıdaki işlevleri kullanabilir:

    Sütun başvurusu, satır deseni değişken adı (rowPatternVar.colName) ile nitelenebilir. Bu, geçerli eşleşmede bu değişkene eşlenen satırlardan değerleri seçer. Örneğin, LAST(down.tstamp) olarak downsınıflandırılan son satırın zaman damgasıdır. Nitelenmemiş sütun başvuruları, belirli bir desen değişkeni seçmeden eşleşmedeki geçerli satıra başvurur.

    Satır deseni değişkeni henüz eşleşmediyse, nitelenmiş sütun başvurusu olarak NULLdeğerlendirilir.

    Şu anda satır için test edilen desen değişkenini adlandırdığında rowPatternVar , rowPatternVar.colName bu satırın sütun değerine başvurur ve nitelenmemiş colNamebir ile eşdeğerdir. Farklı bir desen değişkeni adlandırıldığında rowPatternVar , rowPatternVar.colName bu değişkene zaten eşlenmiş satırlardan değerleri okur.

    ve gibi rand()uuid() belirsiz işlevlere koşullarda DEFINE izin verilmez çünkü NFA benzetimi, koşulları satır başına birden çok kez değerlendirebilir. Bir tane kullanırsanız, Azure Databricks MATCH_RECOGNIZE_NONDETERMINISTIC_DEFINE yükseltir.

    ve dışındaki FIRST()LAST() genel toplama işlevleri içinde DEFINEdesteklenmez. Bir tane kullanırsanız, Azure Databricks MATCH_RECOGNIZE_DEFINE_UNSUPPORTED_AGGREGATE yükseltir.

Yaygın hata koşulları