2017-01-01 1 views
0

원의 중심점 (위도, 경도) 및 반지름으로 표시되는 원 영역을 db에 저장했습니다. 필드 : id, lat, lon, point, radius 이제지도에 다른 점이 있습니다.지도에서 특정 점을 포함하는 db의 원 영역을 찾으십시오.

제 목표는이 지점이 어느 부분에 있는지를 찾는 것입니다. 이미 지정된 영역의 모든 점을 검색 할 수있는 기능이 있지만 지금은 약간 다른 동작이 필요하고 모든 영역이 지정된 점을 포함하고 있습니다.

언급 한대로 작동하는 쿼리를 어떻게 보입니까?

+0

질문을 잊었습니다. – GurV

+0

@ GurwinderSingh 님이 –

+0

을 업데이트했습니다. 아마도 도움이 될 것입니다. http://www.movable-type.co.uk/scripts/latlong-db.html –

답변

0

나는 연구를 수행하고 mysql 5.7에서 더 많은 공간 함수가 있다는 것을 발견했다. 업그레이드와 함께 제공되는 소프트웨어는 SST_Distance_Sphere입니다. 그래서 내 서버에서 업그레이드하고이 SQL을 사용하기로 결정했습니다 :

SELECT ST_Distance_Sphere(POINT(lng, lat), POINT(19.93875777348876 , 50.061379843744234)) as Radius 
FROM locations 
WHERE ST_Distance_Sphere(POINT(lng, lat), POINT(19.93875777348876 , 50.061379843744234)) <= radius 
관련 문제