0

任意の数の緯度/経度座標の地理的中点を計算するには、MySQL クエリ (または関数) が必要です。このページhttp://www.geomidpoint.com/calculation.htmlで説明されている方法 C (平均緯度/経度) を使用したいのですが、これを SQL クエリに変換する方法がわかりません。私は次のような形のものを探しています:

ポイントから LATITUDE_AVG_FORMULA(points.latitude),LONGITUDE_AVG_FORMULA(points.longitude) を選択;

ポイント テーブルの各ポイントには、緯度と経度が 10 進形式で関連付けられています。誰かがこれに使用している MySQL クエリ (または関数) を既に持っているか、地理空間計算の経験が私よりもはるかに多いことを願っています。よろしくお願いします。

4

1 に答える 1

1

方法 C は基本的に加重平均のようです。あなたの質問は MySQL 構文に近いものです。これらが 10 進形式であることを考えると。

重みがある場合:

SELECT
    SUM( longitude * weight ) / SUM( weight ) AS Avg_Long,
    SUM( latitude * weight ) / SUM( weight ) AS Avg_Lat
FROM
    points

または重み付けなし:

SELECT
    AVG( longitude ) AS Avg_Long,
    AVG( latitude ) AS Avg_Lat
FROM
    points

あなたの参照はベースライン調整をほのめかしていますが、それが必要かどうかはわかりません.

于 2009-11-03T23:18:23.560 に答える