※ MongoDB 공식 매뉴얼에 나와있는 $minDistance 부분을 번역해 보도록 하겠습니다. 번역을 안하는게 나을 것 같은 용어들은 한번만 번역하거나 그대로 두었습니다.
Definition (정의)
$minDistance
$near 또는 $nearSphere 쿼리의 결과를 중심점으로부터 적어도 지정한 거리만큼 떨어진 documents 로 필터링합니다.
$near 또는 $nearSphere 쿼리가 중심점을 GeoJSON point 로 지정한다면 음수가 아닌 미터 단위의 숫자로 거리를 지정해야 합니다.
$nearSphere 쿼리가 중심점을 레거시 좌표 쌍으로 지정한다면 음수가 아닌 라디안 단위의 숫자로 거리를 지정해야 합니다. $near 은 쿼리에서 중심점을 GeoJSON point 로 지정하는 경우 2dsphere index 만 사용할 수 있습니다.
Examples (예시)
Use with $near
중요 : 위도와 경도 좌표를 지정한다면, 경도 - 위도 순서로 나열하세요 :
- -180 <= 경도 <= 180
- -90 <= 위도 <= 90
places 콜렉션이 2dsphere index 를 갖는다고 가정합니다.
다음의 예시는 지정된 GeoJSON point 로부터 1000 m 이상 5000 m 이하의 거리를 갖는 documents 를 가까운 것에서 먼 순서로 정렬해 반환합니다 :
db.places.find(
{
location:
{ $near :
{
$geometry: { type: "Point", coordinates: [ -73.9667, 40.78 ] },
$minDistance: 1000,
$maxDistance: 5000
}
}
}
)
Use with $nearSphere
places 콜렉션의 documents 가 location 필드와 2dsphere index 를 갖는다고 가정합니다.
다음의 예시는 지정된 점으로부터 location 이 1000 m 이상 5000 m 이하인 데이터를 가까운 것에서 먼 순서로 정렬해 반환합니다 :
db.places.find(
{
location: {
$nearSphere: {
$geometry: {
type : "Point",
coordinates : [ -73.9667, 40.78 ]
},
$minDistance: 1000,
$maxDistance: 5000
}
}
}
)
중심점을 레거시 좌표 쌍으로 지정하는 예시는 이 링크를 보십시오.
출처 : https://docs.mongodb.com/manual/reference/operator/query/minDistance/
'Database > mongoDB' 카테고리의 다른 글
$polygon (0) | 2020.04.19 |
---|---|
$maxDistance (0) | 2020.04.16 |
$geometry (0) | 2020.04.16 |
$centerSphere (0) | 2020.04.12 |
$center (0) | 2020.04.12 |