ホームページ > データベース > mysql チュートリアル > SQL はどのようにして最も近い緯度と経度を見つけることができるのでしょうか?

SQL はどのようにして最も近い緯度と経度を見つけることができるのでしょうか?

Patricia Arquette
リリース: 2025-01-18 16:01:09
オリジナル
492 人が閲覧しました

How Can SQL Find the Nearest Latitude and Longitude?

最も近い緯度と経度を検索する SQL メソッド

空間地理アプリケーションでは、特定の座標系に最も近い緯度と経度の座標を決定することが一般的なタスクです。このタスクは、指定した場所からの距離に基づいて、最も近い都市、ランドマーク、またはその他の名所を特定する必要がある場合に発生します。

この問題を解決する 1 つの方法は、SQL クエリを使用することです。 SQL には、距離を計算し、距離条件に基づいてデータを取得するために使用できる一連の関数が用意されています。

クエリ構造

次のクエリは、Haversine 公式を使用して、特定の座標とデータベース テーブル内のすべての座標の間の距離を計算します。この式は、地球の曲率を考慮して、緯度と経度の差に基づいて距離を決定します。

<code class="language-sql">SELECT latitude, longitude, SQRT(
    POW(69.1 * (latitude - [startlat]), 2) +
    POW(69.1 * ([startlng] - longitude) * COS(latitude / 57.3), 2)) AS distance
FROM TableName HAVING distance < 25
ORDER BY distance ASC;</code>
ログイン後にコピー
  • [startlat][startlng] は開始点の緯度と経度の座標を表します。
  • 25 最大距離のしきい値を指定します。距離が 25 を超えるレコードは結果から除外されます。
  • ORDER BY distance ASC 結果を距離の昇順に並べ替えます (最も近い座標が最初)。

クエリの実行

このクエリが実行されると、指定された距離のしきい値内で最も近い座標の緯度と経度が返されます。結果は距離によって並べ替えられ、最も近い座標が最初にリストされます。

この方法を使用すると、条件を満たす最も近い緯度と経度の座標を効果的に見つけることができます。この知識は、位置情報サービス、物流、データ分析などのさまざまな分野に応用できます。

以上がSQL はどのようにして最も近い緯度と経度を見つけることができるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート