

 Amazon Redshift unterstützt UDFs ab Patch 198 nicht mehr die Erstellung von neuem Python. Das bestehende Python UDFs wird bis zum 30. Juni 2026 weiterhin funktionieren. Weitere Informationen finden Sie im [Blog-Posting](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# ST\$1 AddPoint
<a name="ST_AddPoint-function"></a>

ST\$1 AddPoint gibt eine Linienkettengeometrie zurück, die mit der Eingabegeometrie identisch ist, wobei ein Punkt hinzugefügt wurde. Wenn ein Index angegeben wird, wird der Punkt an der Indexposition hinzugefügt. Wenn der Index -1 ist oder nicht angegeben wird, wird der Punkt an den Linestring angehängt. 

Der Index ist null-basiert. Der räumliche Referenzsystem-Bezeichner (SRID) des Ergebnisses entspricht dem der Eingabegeometrie. 

Die Dimension der zurückgegebenen Geometrie entspricht der des *geom1*-Werts. Wenn *geom1* und *geom2* unterschiedliche Dimensionen haben, wird *geom2* auf die Dimension von *geom1* projiziert.

## Syntax
<a name="ST_AddPoint-function-syntax"></a>

```
ST_AddPoint(geom1, geom2)
```

```
ST_AddPoint(geom1, geom2, index)
```

## Argumente
<a name="ST_AddPoint-function-arguments"></a>

 *geom1*   
Ein Wert vom Datentyp `GEOMETRY` oder ein Ausdruck, der zu einem `GEOMETRY`-Typ ausgewertet wird. Der Subtyp muss sein `LINESTRING`. 

 *geom2*   
Ein Wert vom Datentyp `GEOMETRY` oder ein Ausdruck, der zu einem `GEOMETRY`-Typ ausgewertet wird. Der Subtyp muss sein `POINT`. Der Punkt kann der leere Punkt sein.

 *index*   
Ein Wert des Datentyps `INTEGER`. der die Position eines null-basierten Indexes darstellt. 

## Rückgabetyp
<a name="ST_AddPoint-function-return"></a>

`GEOMETRY` 

Wenn *geom1*, *geom2* oder *index* null ist, wird null zurückgegeben. 

Wenn *geom2* der leere Punkt ist, wird eine Kopie von *geom1* zurückgegeben. 

Wenn *geom1* kein `LINESTRING` ist, wird ein Fehler zurückgegeben. 

Wenn *geom2* kein `POINT` ist, wird ein Fehler zurückgegeben. 

Wenn der *Index* außerhalb des Bereichs liegt, wird ein Fehler zurückgegeben. Gültige Werte für die Indexposition sind -1 oder ein Wert zwischen 0 und `ST_NumPoints(geom1)`. 

## Beispiele
<a name="ST_AddPoint-function-examples"></a>

Die folgende SQL-Anweisung fügt einem Linestring einen Punkt hinzu, um ihn zu einem geschlossenen Linestring zu machen. 

```
WITH tmp(g) AS (SELECT ST_GeomFromText('LINESTRING(0 0,10 0,10 10,5 5,0 5)',4326))
SELECT ST_AsEWKT(ST_AddPoint(g, ST_StartPoint(g))) FROM tmp;
```

```
 st_asewkt
------------------------------------------------
 SRID=4326;LINESTRING(0 0,10 0,10 10,5 5,0 5,0 0)
```

Die folgende SQL-Anweisung fügt einen Punkt zu einer bestimmten Position in einem Linestring hinzu. 

```
WITH tmp(g) AS (SELECT ST_GeomFromText('LINESTRING(0 0,10 0,10 10,5 5,0 5)',4326))
SELECT ST_AsEWKT(ST_AddPoint(g, ST_SetSRID(ST_Point(5, 10), 4326), 3)) FROM tmp;
```

```
 st_asewkt
------------------------------------------------
 SRID=4326;LINESTRING(0 0,10 0,10 10,5 10,5 5,0 5)
```