※ MongoDB 공식 매뉴얼에 나와있는 $center 부분을 번역해 보도록 하겠습니다. 번역을 안하는게 나을 것 같은 용어들은 한번만 번역하거나 그대로 두었습니다.
Definition (정의)
$center
$center 연산자는 $geoWithin 쿼리에 원을 지정합니다. 쿼리는 원의 경계 내에 있는 레거시 좌표 쌍을 반환합니다. 연산자는 GeoJSON 객체를 반환하지 않습니다.
$center 연산자를 사용하기 위해선, 다음을 포함하는 배열을 지정해야 합니다 :
- 원 중심점의 그리드 좌표
- 좌표 시스템에서 사용하는 단위로 측정한 원의 반지름
{
<location field>: {
$geoWithin: { $center: [ [ <x>, <y> ] , <radius> ] }
}
}
중요 : 경도와 위도를 사용할 땐, 경도를 먼저 지정하세요.
Behavior (동작)
쿼리는 평평한 (평면) geometry 를 사용해 거리를 계산합니다.
응용프로그램에서 geospatial index 없이 $center 를 사용할 수 있습니다. 그러나 geospatial index 는 인덱싱되지 않은 것보다 훨씬 빠른 쿼리를 지원합니다.
2d geospatial index 만 $center 를 지원합니다.
Example (예시)
다음의 예시 쿼리는 중심점이 [ -74 , 40.74 ] 이고 반지름이 10 인 원 내에 있는 좌표를 가진 모든 documents 를 반환합니다 :
db.places.find(
{ loc: { $geoWithin: { $center: [ [-74, 40.74], 10 ] } } }
)
출처 : https://docs.mongodb.com/manual/reference/operator/query/center/
'Database > mongoDB' 카테고리의 다른 글
$geometry (0) | 2020.04.16 |
---|---|
$centerSphere (0) | 2020.04.12 |
$box (0) | 2020.04.12 |
$nearSphere (0) | 2020.04.09 |
$near (0) | 2020.04.05 |