CARDINALITY 関数

CARDINALITY フィールド関数は、 指定された配列内の繰り返しフィールドの数を戻します。

構文

CARDINALITY は、field_reference で指定された、 配列内の繰り返しフィールドの数を示す整数値を戻します。 field_reference が存在しないフィールドを示している場合、ゼロが戻されます。

たとえば、この結果を使用して、最後から 3 番目のフィールドを参照できます。
Body.Invoice."Item"[CARDINALITY(Body.Invoice."Item"[]) - 2].Quantity

この例の場合、CARDINALITY 関数には、 [] で終了するフィールド参照が渡されます。 これは、「Item フィールドのすべてのインスタンスをカウントする」ことを意味します。 最後に [] を置くことが必要です。 これにより、「すべてのインスタンス」を参照する必要のある他のインスタンスとの構文の一貫性を保つことができます。 配列指数は 1 から始まります。 そのため、上の例の配列指数は、 Item フィールドの最後から 3 番目のインスタンスを指しています。

注: while ループを使用してメッセージのエレメントを処理する場合は、 パフォーマンスを向上させるため、 変数を CARDINALITY の値に設定してからループに入れてください。

関連概念
ESQL

関連タスク
ESQL の開発
コード・ページおよびメッセージ・エンコードの変換

関連資料
構文の設定
ESQL フィールド関数