16.20 - nPath引数 - Teradata Vantage NewSQL Engine

Teradata Vantage™ - NewSQL Engineの分析関数

prodname
Teradata Database
Teradata Vantage NewSQL Engine
vrm_release
16.20
category
プログラミング リファレンス
featnum
B035-1206-162K-JPN
Mode
パターンマッチング モードを指定します。
オプション 説明
OVERLAPPING 以前見つかった一致に含まれるかどうかを問わず、パーティションにあるすべてのパターンを検索します。1つの行は、特定の一致パターンにある複数のシンボルと一致する場合もあります。
NONOVERLAPPING 最後のパターン一致に続く行で次のパターン検索を開始します。
Pattern
関数による検索の対象となるパターンを指定します。patternの作成には、シンボル(Symbols引数で定義)、演算子、括弧を使用します。

パターンに複数の演算子がある場合、関数はそれらを優先順に適用し、同じ優先順位の演算子は左から右に適用します。関数がサブパターンを最初に評価するように強制するには、サブパターンを括弧で囲みます。詳細は、nPath Patternを参照してください。

Symbols
Pattern引数とResult引数の値に表示されるシンボルを定義します。col_exprは値が列名の式、symbolは任意の有効な識別子、symbol_predicateはSQL述部(多くの場合に列名)です。

例えば、このSymbols引数はWebサイト閲覧を分析するために使用します。

Symbols (
  pagetype = 'homepage' AS H,
  pagetype <> 'homepage' AND pagetype <> 'checkout' AS PP,
  pagetype = 'checkout' AS CO
)

symbolは文字の大小を区別しませんが、大文字1文字または2文字のsymbolはパターンで容易に識別できます。

col_exprが複数の入力テーブルに表示される列を表わす場合は、あいまいな列名をテーブル名で修飾する必要があります。例えば、次のようになります。

Symbols (
  weblog.pagetype = 'homepage' AS H,
  weblog.pagetype = 'thankyou' AS T,
  ads.adname = 'xmaspromo' AS X,
  ads.adname = 'realtorpromo' AS R
)

Pattern引数の値に表示されるシンボルの詳細については、nPath Symbolsを参照してください。Result引数の値に表示されるシンボルの詳細については、nPath Resultを参照してください。

Filter
(オプション)一致行に適用するフィルタを指定します。この関数は、AND演算子を使用してフィルタ式を結合します。

これはfilter_expression構文です。

symbol_expression comparison_operator symbol_expression

2つのシンボル式は、型互換である必要があります。これはsymbol_expression構文です。

{ FIRST | LAST }(column_with_expression OF [ANY](symbol[,...]))

column_with_expressionにはANDまたはOR演算子を含めることができず、そのすべての列が同じ入力による必要があります。関数に複数の入力がある場合、column_with_expressionとシンボルが同じ入力による必要があります。

comparison_operatorは、<><=>==、または<>のいずれかです。

Result
出力列を定義します。col_exprは、値が列名となる式です。一致行から取得する値を指定します。この関数はaggregate_functionをこれらの値に適用します。詳細については、nPath Resultを参照してください。

この関数は、パーティションのすべての一致パターンについて、この引数を1回評価します(つまりパターン一致ごとに1行を出力します)。