지리적 중간 점에 대한 MySQL 쿼리
-
13-09-2019 - |
문제
임의의 위도/경도 좌표의 지리적 중간 점을 계산하려면 MySQL 쿼리 (또는 함수)가 필요합니다. 이 페이지에 설명 된대로 메소드 C (평균 위도/경도)를 사용하고 싶습니다. http://www.geomidpoint.com/calculation.html 그러나 이것을 SQL 쿼리로 변환하는 방법을 알 수는 없습니다. 나는 형식의 무언가를 찾고 있습니다.
points에서 latitude_avg_formula (points.latitude), longitude_avg_formula (points.longitude)를 선택하십시오.
포인트 테이블의 각 지점은 10 진수 형식의 위도와 경도와 관련이 있습니다. 나는 누군가가 이미 사용하고있는 MySQL 쿼리 (또는 기능)를 가지고 있거나 내가 가진 것보다 지리 공간 계산에 더 많은 경험을 가지고 있기를 바라고 있습니다. 도와 주셔서 미리 감사드립니다!
해결책
방법 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
귀하의 참조는 기준선 조정을 암시하지만 필요한지 확실하지 않습니다.
제휴하지 않습니다 StackOverflow