

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# SUBARRAY 函数
<a name="r_subarray"></a>

从指定的位置开始提取数组的一部分。返回一个新数组，其中包含输入数组中指定数量的元素。

## 语法
<a name="r_subarray-syntax"></a>

```
SUBARRAY( super_expr, start_position, length )
```

## 参数
<a name="r_subarray-arguments"></a>

*super\$1expr*  
数组形式的有效 SUPER 表达式。

*start\$1position*  
一个整数，用于指定提取的起始位置。索引从 0 开始，其中 0 表示第一个元素。如果 start\$1position 超过数组长度，则返回一个空数组。

*length*  
一个可选的整数，用于指定要提取的元素数。如果忽略，则返回数组从起始位置到末尾的所有元素。

## 返回类型
<a name="r_subarray-return-type"></a>

SUBARRAY 函数返回一个 SUPER 数据值。

## 示例
<a name="r_subarray-examples"></a>

以下是 SUBARRAY 函数的示例。

```
 SELECT SUBARRAY(ARRAY('a', 'b', 'c', 'd', 'e', 'f'), 2, 3);
   subarray
---------------
 ["c","d","e"]
(1 row)
```

## 另请参阅
<a name="r_subarray-see-also"></a>
+ [ARRAY\$1POSITION 函数](array_position.md)
+ [ARRAY\$1POSITIONS 函数](array_positions.md)
+ [ARRAY\$1FLATTEN 函数](array_flatten.md)
+ [ARRAY\$1CONCAT 函数](r_array_concat.md)