Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
fungsi
Berlaku untuk:
pemeriksaan Databricks SQL
Databricks Runtime 17.1 ke atas
Important
Fitur ini ada di Pratinjau Publik.
Nota
Fitur ini tidak tersedia di gudang Databricks SQL Classic. Untuk mempelajari selengkapnya tentang gudang Databricks SQL, lihat Jenis gudang SQL.
Mengatur titik ke-n dari linestring input GEOGRAPHY atau nilai GEOMETRY.
Syntax
st_setpoint ( geo1Expr, indexExpr, geo2Expr )
Arguments
-
geo1Expr: NilaiGEOGRAPHYatauGEOMETRYyang mewakili linestring. -
indexExpr: NilaiINTEGERyang menunjukkan posisi mulai dari 1 dalam linestring di mana titik baru harus ditempatkan. -
geo2Expr: NilaiGEOGRAPHYatauGEOMETRYyang mewakili titik.
Returns
Nilai jenis GEOGRAPHY jika geo1Expr dan geo2Expr berjenis GEOGRAPHY, atau nilai jenis GEOMETRY jika geo1Expr dan geo2Expr berjenis GEOMETRY.
Jika indexExpr positif, nilai GEOGRAPHY atau GEOMETRY yang dikembalikan adalah linestring baru yang titik ke-indexExpr-nya (dihitung dari kiri) diatur menjadi geo2Expr.
Jika indexExpr negatif, posisi berbasis 1 linestring tempat titik ditambahkan diukur dari kanan.
- Fungsi mengembalikan
NULLjika salah satu input adalahNULL. - Nilai SRID dari linestring output sama dengan nilai SRID umum dari input
GEOGRAPHYatauGEOMETRYnilai. - Dimensi output
GEOGRAPHYatauGEOMETRYlinestring sama dengan dimensigeo1Expr. Jikageo2Exprberisi koordinat yang dimensinya tidak ada dalamgeo1Exprkoordinat yang sesuai diatur ke 0.
Kondisi kesalahan
- Jika
geo1ExprberjenisGEOGRAPHYdangeo2ExprberjenisGEOMETRY, atau sebaliknya, fungsi mengembalikan DATATYPE_MISMATCH. - Jika nilai
geo1ExprSRID dangeo2Exprberbeda, fungsi mengembalikan ST_DIFFERENT_SRID_VALUES. - Fungsi mengembalikan ST_INVALID_ARGUMENT. INVALID_TYPE dalam salah satu kasus berikut:
- Nilai
geo1Exprbukan linestring. - Nilai
geo2Exprbukan titik.
- Nilai
- Fungsi mengembalikan ST_INVALID_ARGUMENT. EMPTY_LINESTRING jika nilai
geo1Expradalah linestring kosong. - Fungsi mengembalikan ST_INVALID_ARGUMENT. EMPTY_POINT jika nilai
geo2Expradalah titik kosong. - Jika nilai absolut dari nilai
indexExpradalah 0 atau lebih besar dari jumlah titik dalam linestring, fungsi mengembalikan ST_INVALID_ARGUMENT. INVALID_INDEX_VALUE.
Examples
-- We set the first point of the linestring counting from the left.
> SELECT st_astext(st_setpoint(st_geomfromtext('LINESTRING(1 2,3 4)'), 1, st_geomfromtext('POINT(7 8)')));
LINESTRING(7 8,3 4)
-- We set the first point of the linestring counting from the right.
-- The point is missing a Z coordinate. This is set to 0 when we update the linestring.
> SELECT st_asewkt(st_setpoint(st_geogfromtext('LINESTRING ZM (1 2 3 4,5 6 7 8)'), -1, st_geogfromtext('POINT M (0 9 99)')));
SRID=4326;LINESTRING ZM (1 2 3 4,0 9 0 99)