

 Amazon Redshift は、パッチ 198 以降、新しい 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/)を参照してください。

# ST\$1GeometryN
<a name="ST_GeometryN-function"></a>

ST\$1GeometryN は、次のように、入力ジオメトリの入力インデックスで指定されているジオメトリを返します。
+ 入力がポイント、ラインストリング、またはポリゴンの場合、インデックスが 1 の場合はジオメトリがそのまま返され、インデックスが 1 以外の場合は null が返されます。
+ 入力がマルチポイント、マルチラインストリング、マルチポリゴン、またはジオメトリコレクションの場合、ポイント、ラインストリング、ポリゴン、またはジオメトリコレクションは入力インデックスでの指定に従って返されます。

このインデックスは 1 から始まります。結果の空間参照系識別子 (SRID) は、入力ジオメトリのものと同じです。結果のジオメトリのディメンションは、入力ジオメトリのものと同じです。

## 構文
<a name="ST_GeometryN-function-syntax"></a>

```
ST_GeometryN(geom, index)
```

## 引数
<a name="ST_GeometryN-function-arguments"></a>

 *geom*   
データ型 `GEOMETRY` の値または `GEOMETRY` 型と評価される式の値。

 *index*   
1 から始まるインデックスの位置を表すデータ型 `INTEGER` の値。

## 戻り型
<a name="ST_GeometryN-function-return"></a>

`GEOMETRY` 

*geom* または *index* が null の場合、null が返されます。

*index* が範囲外の場合、エラーが返されます。

## 例
<a name="ST_GeometryN-function-examples"></a>

次の SQL は、ジオメトリコレクションに含まれているジオメトリを返します。

```
WITH tmp1(idx) AS (SELECT 1 UNION SELECT 2),
tmp2(g) AS (SELECT ST_GeomFromText('GEOMETRYCOLLECTION(POLYGON((0 0,10 0,0 10,0 0)),LINESTRING(20 10,20 0,10 0))'))
SELECT idx, ST_AsEWKT(ST_GeometryN(g, idx)) FROM tmp1, tmp2 ORDER BY idx;
```

```
 idx |          st_asewkt           
-----+------------------------------
   1 | POLYGON((0 0,10 0,0 10,0 0))
   2 | LINESTRING(20 10,20 0,10 0)
```