メインコンテンツまでスキップ

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