5

postgis を使用して、2 つの地理座標間の距離を計算しています。

select st_distance(
  'POINT(15.651955 73.712769)'::geography, 
  'POINT(14.806993 74.131451)'::geography) AS d;

それは私に 53536.743496517 メートルを返します。これは 54km にほぼ等しいですが、実際の距離はhttp://boulter.com/gps/distance/で計算した 103km です。

クエリで何か間違ったことをしていますか?

4

1 に答える 1

15

POINT() は経度、緯度で引数を取ります。引数を交換します。

select st_distance(
  'POINT(73.712769 15.651955)'::geography, 
  'POINT(74.131451 14.806993)'::geography) AS d;

st_distance
--
103753.197677054

経度と緯度ではなく、緯度と経度の観点から考えているため、私は定期的にこの間違いを犯します。

于 2013-03-02T11:35:32.860 に答える