람다에서 클라우드 검색을 사용하고 있습니다. 지역 쿼리에 문제가 있습니다 (haversin 사용).Cloudsearch 지리 쿼리 필터/거리 별 제한
DB에 저장된 마케터 경도/위도와 비교하여 사용자의 현재 경도/위도를 기준으로 가까운 데이터 (마케터)를 가져와야합니다.
거리별로 정렬 된 모든 데이터를 가져올 수 있지만 거리별로 필터링/필터링 할 수 없으므로 cloudsearch로이를 달성하는 방법을 제안하십시오.
var params = {
query: "matchall",
expr:"{\"distance\":\"haversin(13.185474,77.524030,latlon.latitude,latlon.longitude)\"},{\"expr.distance\":{,5}}",
queryParser:"structured",
sort:"distance asc",
return:"id,distance,latlon,_score"};
위의 쿼리에서 나는 거리를 기준으로 거리를 정렬하고 데이터를 거리별로 정렬하므로 이제는 단지 5 또는 10 kms로 제한하려고합니다.
구름 찾기가 불가능한 경우 다른 방법으로 제안하십시오. 제한된 킬로미터로 주변 데이터를 가져와야합니다.
감사합니다. @Peter. 그러나 이것이 효율적인 솔루션 인 것 같지 않으며, 페이지 매김을 적용하는 것은이 경우에 문제가있다. topleft 및 bottomright 데이터를 사용하여 바운드 상자 필터 쿼리를 적용했지만 haversin이 원 및 바운드 상자 쿼리를 기반으로 정사각형으로 계산할 때 추가 데이터를 제공합니다. – user3099794