IntervalMatch (拡張構文)
拡張された IntervalMatch プレフィックスを使うと、不連続数値を 1 つ以上の数値間隔に一致させると同時に 1 つ以上の追加キーの値を一致させるテーブルを作成できます。
これは強力かつ柔軟な機能で、時間の経過に伴って変化する軸(ゆっくり変化する軸) のあるトランザクションを連結するために使用できます。
IntervalMatch プレフィックスは、間隔をロードする Load または Select ステートメントの前に配置する必要があります。IntervalMatch プレフィックスのあるステートメントの前に、不連続データ点を含むテーブルと追加キーが QlikView にすでにロードされていなくてはなりません。ロードされた間隔テーブルとキーを変換して追加列 (不連続数値データ点) を含むテーブルを生成します。また、新しいテーブルで不連続データ ポイントと間隔、キー項目の値の組み合わせごとにレコードが 1 つ存在するようレコード数を増やします。
構文は次のとおりです。
intervalmatch (matchfield,keyfield1 [ , keyfield2, ... keyfield5 ] ) (loadstatement | selectstatement )
matchfield は、間隔にリンクする不連続の数値を含む項目です。
keyfield(s) は、変換で一致させる追加属性を含む項目です。
loadstatement または selectstatement の結果では、最初の 2 つの項目は各間隔の下限と上限を格納し、3 つ目 (およびその後の項目) は IntervalMatch ステートメントの keyfield(s) を格納する必要があります。間隔は常に閉じているので、終端は間隔に含まれます。数値以外の範囲では間隔が無視されます (未定義として対処)。
未定義の間隔範囲が無視されるのを防ぐためには、間隔の下限または上限を構成する項目に、NULL 値をマップできるようにする必要があるかもしれません。これは、 NullAsValue ステートメントによって、または不連続数値データポイントの前後で、NULL 値を数値に置き換える明示的なテストによって対応することができます。
Inner Join IntervalMatch (Date,Key) LOAD FirstDate, LastDate, Key resident Key;