- Reference >
- Operators >
- Query and Projection Operators >
- Geospatial Query Operators >
- $minDistance
$minDistance¶
On this page
Definition¶
- $minDistance¶
New in version 2.6.
Filters the results of a geospatial $near or $nearSphere query to those documents that are at least the specified distance from the center point.
$minDistance is available for use with 2dsphere index only.
If $near or $nearSphere query specifies the center point as a GeoJSON point, specify the distance as a non-negative number in meters.
If $nearSphere query specifies the center point as legacy coordinate pair, specify the distance as a non-negative number in radians. $near can only use the 2dsphere index if the query specifies the center point as a GeoJSON point.
Examples¶
Use with $near¶
Important
Specify coordinates in this order: “longitude, latitude.”
Consider a collection places that has a 2dsphere index.
The following example returns documents that are at least 1000 meters from and at most 5000 meters from the specified GeoJSON point, sorted from nearest to farthest:
db.places.find(
{
location:
{ $near :
{
$geometry: { type: "Point", coordinates: [ -73.9667, 40.78 ] },
$minDistance: 1000,
$maxDistance: 5000
}
}
}
)
Use with $nearSphere¶
Consider a collection places that contains documents with a location field and has a 2dsphere index.
Then, the following example returns whose location is at least 1000 meters from and at most 5000 meters from the specified point, ordered from nearest to farthest:
db.places.find(
{
location: {
$nearSphere: {
$geometry: {
type : "Point",
coordinates : [ -73.9667, 40.78 ]
},
$minDistance: 1000,
$maxDistance: 5000
}
}
}
)
For an example that specifies the center point as legacy coordinate pair, see $nearSphere