すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:ST_Resample

最終更新日:Jan 15, 2024

このトピックでは、ST_Resample関数について説明します。 この関数は、軌道を再サンプリングする。

構文

軌道ST_Resample (軌道traj, config);

パラメーター

パラメーター

説明

traj

再サンプリングされた軌道。

config

軌道を再サンプリングするために使用されるルール。 形式: {"Rule":"Value"}

configパラメーターで指定できるルールは1つだけです。 次の表に、configパラメーターを使用して指定できるルールを示します。

ルール

データ型

説明

add_point.distance_less

浮動小数点

2点間の距離がパラメータ値より小さくなるように、各軌道に点を均等に追加します。

add_point.period_less

INTERVAL型に変換できる文字列

2つのポイント間の期間がパラメータ値よりも小さくなるように、各軌道にポイントを均等に追加します。

drop_point.distance_less

浮動小数点

軌道の連続するセグメントのすべての点と軌道の開始点との間の距離がこの規則の値未満である場合、連続するセグメントはマージされる。 取得されたセグメントの始点と終点のみが保持されます。

drop_point.period_less

INTERVAL型に変換できる文字列

軌道の複数の連続するセグメント間で必要とされる期間の合計が所与の期間未満である場合、連続するセグメントをマージする。 取得されたセグメントの始点と終点のみが保持されます。

説明

この関数は、指定されたルールに基づいて軌道を再サンプリングし、再サンプリング結果を返します。

とtraj As
(
  select '{"trajectory":{"version":1,"type":"STPOINT","leafcount":5,"start_time":"2000-01 00:00:00","end_time":"2000-01-05 00:00:00","spatial":"LINESTRING(1 1,10 10,11 11,13 13,15 15)" 、"timeline":["2000-01-01 00:00:00","2000-01-02 00:00:00","2000-01-03 00:00:00","2000-01-04 00:00:00","2000-01-05 00:00:00:00"]}':: 軌道a
)
SELECT ST_Resample(a, '{"add_point.distance_less":3}') from traj;
                                                                                                                                                                                                              st_resample
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 {"trajectory":{"version":1,"type":"STPOINT","leafcount":9,"start_time":"2000-01 00:00:00","end_time":"2000-01-05 00:00:00","spatial":"LINESTRING(1 1,2.8 2.8,4.6 4.6,6.4 6.4,8.2 8.2) 10 10,11 11,13 13,15 15)" 、"timeline":["2000-01-01 00:00:00" 、"2000-01-01 04:48:00" 、"2000-01-01 09:36:00" 、"2000-01-01-01 14:24:00" 、"2000-01-01 19:12:00" 、"2000-01-02 00:00 00:00" 、"2000-01-02 00:03 00:00" 、"2000-01-04 00:00:00","2000-01-05 00:00:00"]}}
(1行)

trajとして
(
  select '{"trajectory":{"version":1,"type":"STPOINT","leafcount":5,"start_time":"2000-01 00:00:00","end_time":"2000-01-05 00:00:00","spatial":"LINESTRING(1 1,10 10,11 11,13 13,15 15)" 、"timeline":["2000-01-01 00:00:00","2000-01-02 00:00:00","2000-01-03 00:00:00","2000-01-04 00:00:00","2000-01-05 00:00:00:00"]}':: 軌道a
)
SELECT ST_Resample(a, '{"add_point.period_less":"0.5 day"}') from traj;
                                                                                                                                                                                                             st_resample
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 {"trajectory":{"version":1,"type":"STPOINT","leafcount":9,"start_time":"2000-01 00:00:00","end_time":"2000-01-05 00:00:00","spatial":"LINESTRING(1 1,5.5 5.5,10 10,10.5 10.5,11 11,12 12,13 13,14 14,15 15)") "" timeline ":[" 2000-01-01 00:00:00 "、" 2000-01-01 12:00:00 "、" 2000-01-02 00:00:00 "、" 2000-01-02 12:00:00 "、" 2000-01-03 00:00:00 "、" 2000-01-03 12:00:00 "、" 2000-01-04 00:00 "、" 2000-01-04 00:04 12:00 "、" 2000-01-05 00:00:00 "}]}
(1行)

trajとして
(
  select '{"trajectory":{"version":1,"type":"STPOINT","leafcount":5,"start_time":"2000-01 00:00:00","end_time":"2000-01-05 00:00:00","spatial":"LINESTRING(1 1,10 10,11 11,13 13,15 15)" 、"timeline":["2000-01-01 00:00:00","2000-01-02 00:00:00","2000-01-03 00:00:00","2000-01-04 00:00:00","2000-01-05 00:00:00:00"]}':: 軌道a
)
SELECT ST_Resample(a, '{"drop_point.distance_less":3}') from traj;
                                                                                                                                    st_resample
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 {"trajectory":{"version":1,"type":"STPOINT","leafcount":4,"start_time":"2000-01 00:00:00","end_time":"2000-01-05 00:00:00","spatial":"LINESTRING(1 1,10 10,13 13,15 15)" 、"timeline":["2000-01-01 00:00:00","2000-01-02 00:00:00","2000-01-04 00:00:00","2000-01-05 00:00:00"]}}
(1行)