> 백엔드 개발 > PHP 튜토리얼 > MySQL의 Haversine 공식을 사용하여 Great Circle Distance를 어떻게 계산할 수 있습니까?

MySQL의 Haversine 공식을 사용하여 Great Circle Distance를 어떻게 계산할 수 있습니까?

Patricia Arquette
풀어 주다: 2024-12-20 10:23:17
원래의
758명이 탐색했습니다.

How Can I Calculate Great Circle Distance Using MySQL's Haversine Formula?

MySQL 기반 대권 거리 계산(Haversine Formula)

지구 표면의 두 지리적 지점 사이의 대권 거리를 계산하려면, Haversine 공식을 사용할 수 있습니다. 이 공식에는 두 지점의 경도와 위도가 필요합니다.

이 경우 PHP가 필요하지 않고 MySQL 내에서 이 계산을 완전히 수행하는 것이 목표입니다. 이를 달성하려면 Google 코드 FAQ에서 영감을 받은 다음 SQL 문을 고려하세요.

SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin(radians(lat)) ) ) AS distance
FROM markers
HAVING distance < 25
ORDER BY distance
LIMIT 0, 20;
로그인 후 복사

이 문은 시작점이 위도 37, 경도 -122라고 가정하고 반경 25마일 내에서 가장 가까운 20개 위치를 검색합니다. . Haversine 공식을 사용하여 각 지점과 시작점 사이의 거리를 계산합니다. 위도 및 경도 값을 적절히 수정하면 특정 요구 사항에 맞게 쿼리를 맞춤화할 수 있습니다.

위 내용은 MySQL의 Haversine 공식을 사용하여 Great Circle Distance를 어떻게 계산할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿