ST_ 設定點 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

ST_ 設定點

ST_SetPoint 返回一個線串,其座標與索引指定的輸入線串位置相對較新。新座標是輸入點的座標。

傳回幾何的尺寸與geom1值。如果geom1geom2具有不同的尺寸,geom2的尺寸投影到geom1

Syntax (語法)

ST_SetPoint(geom1, index, geom2)

引數

geom1

GEOMETRY 資料類型的值,或是評估為 GEOMETRY 類型的表達式。子類型必須是 LINESTRING

索引

資料類型的值INTEGER,代表索引的位置。一個0從左側引用線串的第一個點,1指的是第二個點,依此類推。索引可以是負值。一個-1從右側引用線串的第一個點,-2從右側引用 linestring 的第二個點,依此類推。

geom2

GEOMETRY 資料類型的值,或是評估為 GEOMETRY 類型的表達式。子類型必須是 POINT

傳回類型

GEOMETRY

如果geom2是空點,那麼geom1返回。

如果 geom1geom2index 為 Null,則會傳回 Null。

如果geom1不是 linestring,則會傳回錯誤。

如果指數不在有效的索引範圍內,則會傳回錯誤。

如果geom2不是點,則會傳回錯誤。

如果 geom1geom2 的空間參考系統識別符 (SRID) 不同,則會傳回錯誤。

範例

以下 SQL 返回一個新的線串,我們在其中將輸入線串的第二個點設置為指定點。

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)

下面的 SQL 示例返回一個新的線串,我們在其中設置帶有指定點的線串的右側的第三個點(索引為負)。

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)