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

ApsaraDB RDS:ST_Distance

最終更新日:Jan 12, 2024

このトピックでは、ST_Distance関数について説明します。 この関数は、ジオメトリオブジェクトの参照座標系における2つのジオメトリオブジェクト間の2Dユークリッド距離を計算します。 2つの地理オブジェクトを指定した場合、この関数は地理オブジェクト間の最小球面距離をメートル単位で返します。

構文

float ST_Distance (ジオメトリg1、ジオメトリg2);
フロートST_Distance(geography gg1 , geography gg2);
float ST_Distance(geography gg1、geography gg2、ブール値useSpheroid); 

パラメーター

パラメーター説明
g1指定する最初のジオメトリオブジェクト。
g2指定する2番目のジオメトリオブジェクト。
gg1指定する最初のgeographyオブジェクト。
gg2指定する2番目のgeographyオブジェクト。
usesSpheroid楕円体を使用するかどうかを指定します。 デフォルトはtrueです。このパラメーターをfalseに設定すると、速度を向上させるために特定の精度が適用されます。

説明

この関数は、円形の文字列と曲線をサポートします。

次の例は、ST_Distance関数とST_3DDistance関数の違いを示しています。
SELECT ST_Distance(g1,g2),ST_3DDistance(g1,g2) FROM(SELECT 'POINT(0 0 0)'::geometry as g1,
                                                                 'POINT(1 1)'::geometry as g2) as test;
   st_distance | st_3ddistance
----------------- + ------------------
 1.4142135623731 | 1.73205080756888
(1行)