View a markdown version of this page

ST_ SetPoint - Amazon Redshift

Amazon Redshift unterstützt die Verwendung von Python-UDFs nach dem 30. Juni 2026 nicht mehr. Wir werden damit beginnen, es schrittweise durchzusetzen. Weitere Informationen zum Ende der Lebensdauer von Python und zu den Migrationsoptionen finden Sie im Blogbeitrag, der am 30. Juni 2025 veröffentlicht wurde.

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_ SetPoint

ST_ SetPoint gibt eine Linienfolge mit aktualisierten Koordinaten in Bezug auf die Position der Eingabe-Linienfolge zurück, wie sie durch den Index angegeben wird. Die neuen Koordinaten sind die Koordinaten des Eingabepunkts.

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

ST_SetPoint(geom1, index, geom2)

Argumente

geom1

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

index

Ein Wert des Datentyps INTEGER, der die Position eines Index darstellt. Eine 0 bezieht sich auf den ersten Punkt eines Linestrings von links, 1 bezieht sich auf den zweiten Punkt und so weiter. Der Index kann ein negativer Wert sein. Eine -1 bezieht sich auf den ersten Punkt eines Linestrings von rechts, -2 bezieht sich auf den zweiten Punkt des Linestrings von rechts und so weiter.

geom2

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

Rückgabetyp

GEOMETRY

Wenn geom2 der leere Punkt ist, wird geom1 zurückgegeben.

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

Wenn geom1 kein Linestring ist, wird ein Fehler zurückgegeben.

Wenn index nicht in einem gültigen Indexbereich ist, wird ein Fehler zurückgegeben.

Wenn geom2 kein Punkt ist, wird ein Fehler zurückgegeben.

Wenn geom1 und geom2 nicht den gleichen SRID-Wert (Spatial Reference System Identifier) haben, wird ein Fehler zurückgegeben.

Beispiele

Die folgende SQL-Anweisung gibt eine neue Linienfolge zurück, bei der der zweite Punkt der Eingabe-Linienfolge auf den angegebenen Punkt gesetzt ist.

SELECT ST_AsText(ST_SetPoint(ST_GeomFromText('LINESTRING(1 2, 3 2, 5 2, 1 2)'), 2, ST_GeomFromText('POINT(7 9)')));
st_astext ------------- LINESTRING(1 2,3 2,7 9,1 2)

Das folgende SQL-Beispiel gibt eine neue Linienfolge zurück, bei der der dritte Punkt von rechts (der Index ist negativ) der Linienfolge auf den angegebenen Punkt gesetzt wird.

SELECT ST_AsText(ST_SetPoint(ST_GeomFromText('LINESTRING(1 2, 3 2, 5 2, 1 2)'), -3, ST_GeomFromText('POINT(7 9)')));
st_astext ------------- LINESTRING(1 2,7 9,5 2,1 2)