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

ApsaraDB RDS:ST_{2D | 2DT | 3D | 3DT}DWithin

最終更新日:Jan 15, 2024

この関数は、指定された軸上の2つのオブジェクト間の距離が指定されたしきい値以下であるかどうかを確認するために使用されます。

構文

bool ST_{2D | 3D}DWithin(geometry geom、trajectory traj、float8 dist);
bool ST_{2D | 3D}DWithin (弾道traj、ジオメトリジオム、float8 dist);
bool ST_{2D | 3D}DWithin(geometry geom、trajectory traj、timestamp ts、timestamp te、float8 dist);
bool ST_{2D | 3D}DWithin (弾道traj、ジオメトリジオム、タイムスタンプts、タイムスタンプte、float8 dist);
bool ST_{2D | 2DT | 3D | 3DT}DWithin(boxndfボックス、弾道traj、float8 dist);
bool ST_{2D | 2DT | 3D | 3DT}DWithin(trajectory traj、boxndfボックス、float8 dist);
bool ST_{2D | 2DT | 3D | 3DT}DWithin(boxndfボックス、軌道traj、タイムスタンプts、タイムスタンプte、float8 dist);
bool ST_{2D | 2DT | 3D | 3DT}DWithin(trajectory traj, boxndf box, timestamp ts, timestamp te, float8 dist);
bool ST_{2D | 2DT | 3D | 3DT}DWithin(trajectory traj1、trajectory traj2、float8 dist);
bool ST_{2D | 2DT | 3D | 3DT}DWithin(trajectory traj1、trajectory traj2、timestamp ts、timestamp te、float8 dist); 

パラメーター

パラメーター説明
geom比較するジオメトリ。
traj比較する軌道、または比較するサブ軌道を含む元の軌道。
traj1比較する軌道、または比較するサブ軌道を含む元の軌道。
traj2比較する軌道、または比較するサブ軌道を含む元の軌道。
ボックス比較する境界ボックス。
tsサブ軌道を抽出する時間範囲の始まり。 このパラメーターはオプションです。
teサブ軌道を抽出する時間範囲の終わり。 このパラメーターはオプションです。
dist2つのオブジェクト間の距離のしきい値。

説明

  • 2Dおよび3D操作の場合、この関数は、2つのオブジェクトの2次元または3次元の投影間の距離が指定されたしきい値以下であるかどうかを確認します。
  • 2DTおよび3DT操作の場合、この関数は、指定された時点で指定された次元の2つのオブジェクト間の距離が指定されたしきい値以下であるかどうかを確認します。

この関数にtsパラメーターとteパラメーターが含まれている場合、2つのオブジェクトを比較して、指定された時間範囲にわたる2つのオブジェクトのサブ軌道間の距離が指定されたしきい値以下であるかどうかを確認します。 この関数にtsまたはteパラメーターが含まれていない場合は、2つのオブジェクトを比較して、2つのオブジェクトの完全な軌道間の距離が指定されたしきい値以下であるかどうかを確認します。 2つのオブジェクトは、trajまたはtraj1パラメータとtraj2パラメータによって指定されます。

ST_DistanceWithin(..) 関数は、ST_2DDWithin(...) 関数 (指定されたオブジェクトのいずれかがジオメトリの場合) およびST_3DTDWithin(...) 関数 (指定されたオブジェクトの両方が軌道の場合) と同じ効果をもたらします。

例:

WITH traj AS (
    ST_makeTrajectory('STPOINT ', 'LINESTRING(0 0 10, 50 0 10, 100 0 10)'::geometry,
                             ('[' | | ST_PGEpochToTS(0) | | '、' | | ST_PGEpochToTS(100) | | ')')::tsrange、
                             '{"leafcount":3、"attributes": {"velocity": {"type": "integer" 、"length": 2、"nullable" : true、"value": [120,130,140]} 、"accuracy": {"type": "float" 、"length": 4、"nullable" : false、"value" [120,130,140]} 、"bearing": {"type": "float" 、"length": 8、"nullable" : false、"value": [120,130,140]} 、"acceleration": {"type": "string" 、"length": 20、"nullable" : true、"value": ["120" 、"130" 、"140"]} 、"active": {"type": "timestamp" 、"nullable" : false、"value": ["Fri Jan 01 11:35:00 2010" 、"Fri Jan 01 12:35:00 2010" 、"Fri Jan 01 13:30:00 2010"]} 、"events": [{"2": "Fri Jan 02 15:00:00 2010"} 、{"3" "Fri Jan 02 15:30:00 2010"}]') a、
           ST_makeTrajectory('STPOINT ', 'LINESTRING (0 20, 50 20, 100 20)'::geometry,
                             ('[' | | ST_PGEpochToTS(0) | | '、' | | ST_PGEpochToTS(100) | | ')')::tsrange、
                             '{"leafcount":3、"attributes": {"velocity": {"type": "integer" 、"length": 2、"nullable" : true、"value": [120,130,140]} 、"accuracy": {"type": "float" 、"length": 4、"nullable" : false、"value" [120,130,140]} 、"bearing": {"type": "float" 、"length": 8、"nullable" : false、"value": [120,130,140]} 、"acceleration": {"type": "string" 、"length": 20、"nullable" : true、"value": ["120" 、"130" 、"140"]} 、"active": {"type": "timestamp" 、"nullable" : false、"value": ["Fri Jan 01 11:35:00 2010" 、"Fri Jan 01 12:35:00 2010" 、"Fri Jan 01 13:30:00 2010"]} 、"events": [{"2": "Fri Jan 02 15:00:00 2010"} 、{"3" 「1月2日金曜日15:30:00 2010」}]') b
)
SELECT ST_2dDWithin(a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(49), 19), ST_3dDWithin(a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(49), 19),
       ST_2dVinis (a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(50), 20), ST_3dVinis (a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(50), 20),
       ST_2dVinis (a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(70), 21), ST_3dVinis (a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(70), 21),
       ST_2dtDWithin(a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(49), 19), ST_3dtDWithin(a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(49), 19),
       ST_2dtDWithin(a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(50), 20), ST_3dtDWithin(a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(50), 20),
       ST_2dtDWithin(a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(70), 21), ST_3dtDWithin(a,b, ST_PGEpochToTS(0),ST_PGEpochToTS(70), 21) from traj;
注意: 一方または両方のジオメトリにz値がありません。 未知のz値は「任意の値」とみなされます。注意: 一方または両方のジオメトリにz値がありません。 未知のz値は「任意の値」とみなされます。
 st_2ddwithin | st_3ddwithin | st_2ddwithin | st_3ddwithin | st_2ddwithin | st_3ddwithin | st_2dtdwithin | st_3dtdwithin | st_2dtdwithin | st_3dtdwithin | st_2dtdwithin | st_3dtdddwithin
--------------------------------------------------------------------------------------------------------------------------------
 f | f | f | t | t | t | t | t | t | t