Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
ST_ AddPoint
ST_ AddPoint mengembalikan geometri linestring yang sama dengan geometri input dengan titik ditambahkan. Jika indeks disediakan, maka titik ditambahkan pada posisi indeks. Jika indeksnya -1 atau tidak disediakan, maka titik tersebut ditambahkan ke linestring.
Indeks ini berbasis nol. Pengidentifikasi sistem referensi spasial (SRID) dari hasilnya sama dengan geometri input.
Dimensi geometri yang dikembalikan sama dengan nilai geom1. Jika geom1 dan geom2 memiliki dimensi yang berbeda, geom2 diproyeksikan ke dimensi geom 1.
Sintaksis
ST_AddPoint(geom1, geom2)
ST_AddPoint(geom1, geom2, index)
Argumen
- geom1
-
Nilai tipe data
GEOMETRYatau ekspresi yang mengevaluasi keGEOMETRYtipe. Subtipenya harusLINESTRING - geom2
-
Nilai tipe data
GEOMETRYatau ekspresi yang mengevaluasi keGEOMETRYtipe. Subtipenya harusPOINTPoinnya bisa menjadi titik kosong. - indeks
-
Nilai tipe data
INTEGERyang mewakili posisi indeks berbasis nol.
Jenis pengembalian
GEOMETRY
Jika geom1, geom2, atau indeks adalah null, maka null dikembalikan.
Jika geom2 adalah titik kosong, maka salinan geom 1 dikembalikan.
Jika geom1 bukan aLINESTRING, maka kesalahan dikembalikan.
Jika geom2 bukan aPOINT, maka kesalahan dikembalikan.
Jika indeks berada di luar jangkauan, maka kesalahan dikembalikan. Nilai yang valid untuk posisi indeks adalah -1 atau nilai antara 0 danST_NumPoints(geom1).
Contoh
SQL berikut menambahkan titik ke linestring untuk membuatnya menjadi linestring tertutup.
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)
SQL berikut menambahkan titik ke posisi tertentu dalam linestring.
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)