メインコンテンツまでスキップ
に最終更新

ARRAY_SLICE

機能​

開始位置と長さを指定して部分配列を返します。

構文​

  • ARRAY_SLICE(arr, offset)
  • ARRAY_SLICE(arr, offset, length)

パラメータ​

  • arr: ARRAY<T>.
  • offset: 開始位置。正の値は先頭から数え (1 は最初の要素)、負の値は末尾から数えます (-1 は最後の要素)。
  • length: 取り出す長さ。正の値なら length 個の要素を取り出し、負の値は長さ 0 として扱います。

戻り値​

  • 入力と同じ型の ARRAY<T> を返します。

使用上の注意​

  • 範囲外の位置でも安全です。開始位置と終了位置は配列の境界に合わせて調整されます。重なる範囲がない場合は空の配列を返します。

使用例​

  • 正の開始位置: 指定位置から右端まで

    • ARRAY_SLICE([1,2,3,4,5,6], 2) -> [2,3,4,5,6]
  • 負の開始位置: 指定位置から右端まで

    • ARRAY_SLICE([1,2,3,4,5,6], -3) -> [4,5,6]
  • 正の長さ: 開始位置から右方向に取り出す

    • ARRAY_SLICE([1,2,3,4,5,6], 2, 3) -> [2,3,4]
    • ARRAY_SLICE([1,2,3,4,5,6], -4, 2) -> [3,4]
  • 負の長さ: 長さ 0 として扱う

    • ARRAY_SLICE([1,2,3,4,5,6], 2, -2) -> []
  • 範囲外の引数: 空の配列を返す

    • ARRAY_SLICE([1,2,3,4,5,6], 10, 3) -> []
  • いずれかの引数が NULL の場合: NULL を返す

    • ARRAY_SLICE([1,2,3], NULL, 2) -> NULL
    • ARRAY_SLICE([1,2,3], 2, NULL) -> NULL
    • ARRAY_SLICE(NULL, 2, 3) -> NULL