Name

ST_AddPoint — Lägg till en punkt i en LineString.

Synopsis

geometry ST_AddPoint(geometry linestring, geometry point);

geometry ST_AddPoint(geometry linestring, geometry point, integer position = -1);

Beskrivning

Lägger till en punkt till en LineString före indexpositionen (med ett 0-baserat index). Om positionsparametern utelämnas eller är -1 läggs punkten till i slutet av LineString.

Tillgänglighet: 1.1.0

Denna funktion stöder 3d och kommer inte att tappa z-index.

Exempel

Lägg till en punkt i slutet av en 3D-linje

SELECT ST_AsEWKT(ST_AddPoint('LINESTRING(0 0 1, 1 1 1)', ST_MakePoint(1, 2, 3)));

    st_asewkt
    ----------
    LINESTRING(0 0 1,1 1 1,1 2 3)

Garantera att alla rader i en tabell är slutna genom att lägga till startpunkten för varje rad till slutet av raden endast för de rader som inte är slutna.

UPDATE sometable
SET geom = ST_AddPoint(geom, ST_StartPoint(geom))
FROM sometable
WHERE ST_IsClosed(geom) = false;