メインコンテンツまでスキップ
バージョン: 26.x

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) -> []
  • 引数がいずれかNULLNULLを返す

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