ARRAY_NEXT スカラー関数

ARRAY_NEXT 関数は、指定の配列指標引数に関連した配列の次に大きな配列指標値を戻します。

構文図を読む構文図をスキップする ARRAY_NEXT ( array-expression , array-index )

スキーマは SYSIBM です。

array-expression
配列タイプの SQL 変数、SQL パラメーター、またはグローバル変数か、配列タイプへのパラメーター・マーカーの CAST 指定。
array-index
配列の指標のデータ・タイプに割り当て可能な値を指定します。有効な値には、データ・タイプの有効値が含まれます。

結果は、指定の array-index 値に関連した、配列で定義されている次に大きな配列指標値です。array-index が配列内の最小の指標配列値未満の場合は、結果は配列内で定義されている最初の配列指標値になります。

関数の結果のデータ・タイプは、配列指標のデータ・タイプです。結果は NULL になることがあります。引数が NULL か、最初の引数のカーディナリティーがゼロか、または array-index の値が配列内の最後の指標値以上の場合には、結果が NULL 値になります。

  1. 通常配列変数 SPECIALNUMBERS 内の 9 番目の指標位置より後の、次の指標値を SQL 変数 NEXT_CONSTIDX に戻します。
    SET NEXT_CONSTIDX = ARRAY_NEXT(SPECIALNUMBERS,9)
    結果は、10 になります。
  2. 連想配列変数 PHONELIST があり、その指標値と電話番号は、'Home' が '4163053745'、'Work' が '4163053746'、'Mom' が '416-4789683' であるとします。この配列内の、指標値 'Dad' (配列値としては存在しない) より後の次の指標の指標値を、X という名前の文字ストリング変数に割り当てます。
    SET X = ARRAY_NEXT(PHONELIST, 'Dad')
    値 'Dad' は配列変数のどの指標値よりも小さな値なので、'Home' の値が X に割り当てられます。指標値 'Work' の後の次の指標である、配列内の指標値を割り当てます。
    SET X = ARRAY_NEXT(PHONELIST, 'Work')
    NULL 値X に割り当てられます。