CARDINALITY 関数

CARDINALITY 関数は、リスト内のエレメントの数を戻します。

構文

CARDINALITY は、ListExpression で指定された、リスト内のエレメントの数を示す整数値を戻します。

ListExpression はリストを戻す式です。例えば、以下のものはすべてリストを戻します。
  • LIST コンストラクター
  • [] 配列標識を使用したフィールド参照
  • 一部の SELECT 式 (リストを戻さないものもある)

この関数の一般的な使用法としては、リスト内のフィールドを繰り返す前に、それらのフィールドの数を判別する場合があります。

-- Determine the number of F1 fields in the message.
-- Note that the [ ] are required
DECLARE CountF1 INT CARDINALITY(OutputRoot.XML.Data.Source.F1[]);
-- Determine the number of fields called F1 with the value 'F12' in the message.
-- Again note that the [ ] are required
DECLARE CountF1F12 INT
  CARDINALITY(SELECT F.* FROM OutputRoot.XML.Data.Source.F1[] AS F
where F = 'F12');
-- Use the value returned by CARDINALITY to refer to a specific element
-- in a list or array:
-- Array indices start at 1, so this example refers to the third-from-last
-- instance of the Item field
Body.Invoice.Item[CARDINALITY(Body.Invoice.Item[]) - 2].Quantity
関連概念
ESQL の概要
関連タスク
ESQL の開発
関連資料
EXISTS 関数
SINGULAR 関数
THE 関数
構文図: 使用可能なタイプ
ESQL リスト関数
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ak05530_