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

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

Jan 18, 2025 pm 04:01 PM

How Can SQL Find the Nearest Latitude and Longitude?

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

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

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

クエリ構造

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

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;
ログイン後にコピー
  • [startlat][startlng] は開始点の緯度と経度の座標を表します。
  • 25 最大距離のしきい値を指定します。距離が 25 を超えるレコードは結果から除外されます。
  • ORDER BY distance ASC 結果を距離の昇順に並べ替えます (最も近い座標が最初)。

クエリの実行

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

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

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

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

DockerでのMySQLメモリの使用を減らします DockerでのMySQLメモリの使用を減らします Mar 04, 2025 pm 03:52 PM

DockerでのMySQLメモリの使用を減らします

Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか? Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか? Mar 19, 2025 pm 03:51 PM

Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか?

mysqlの問題を解決する方法共有ライブラリを開くことができません mysqlの問題を解決する方法共有ライブラリを開くことができません Mar 04, 2025 pm 04:01 PM

mysqlの問題を解決する方法共有ライブラリを開くことができません

sqliteとは何ですか?包括的な概要 sqliteとは何ですか?包括的な概要 Mar 04, 2025 pm 03:55 PM

sqliteとは何ですか?包括的な概要

Linuxでmysqlを実行します(phpmyAdminを使用してポッドマンコンテナを使用して/なし) Linuxでmysqlを実行します(phpmyAdminを使用してポッドマンコンテナを使用して/なし) Mar 04, 2025 pm 03:54 PM

Linuxでmysqlを実行します(phpmyAdminを使用してポッドマンコンテナを使用して/なし)

MACOSで複数のMySQLバージョンを実行する:ステップバイステップガイド MACOSで複数のMySQLバージョンを実行する:ステップバイステップガイド Mar 04, 2025 pm 03:49 PM

MACOSで複数のMySQLバージョンを実行する:ステップバイステップガイド

共通の脆弱性(SQLインジェクション、ブルートフォース攻撃)に対してMySQLを保護するにはどうすればよいですか? 共通の脆弱性(SQLインジェクション、ブルートフォース攻撃)に対してMySQLを保護するにはどうすればよいですか? Mar 18, 2025 pm 12:00 PM

共通の脆弱性(SQLインジェクション、ブルートフォース攻撃)に対してMySQLを保護するにはどうすればよいですか?

人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか? 人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか? Mar 21, 2025 pm 06:28 PM

人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか?

See all articles