$box¶
On this page
Definition¶
-
$box
¶ Specifies a rectangle for a geospatial
$geoWithin
query to return documents that are within the bounds of the rectangle, according to their point-based location data. When used with the$box
operator,$geoWithin
returns documents based on grid coordinates and does not query for GeoJSON shapes.To use the
$box
operator, you must specify the bottom left and top right corners of the rectangle in an array object:Important
If you use longitude and latitude, specify longitude first.
Behavior¶
The query calculates distances using flat (planar) geometry.
Changed in version 2.2.3: Applications can use $box
without having a geospatial
index. However, geospatial indexes support much faster queries than
the unindexed equivalents. Before 2.2.3, a geospatial index must
exist on a field holding coordinates before using any of the
geospatial query operators.
Example¶
The following example query returns all documents that are within the
box having points at: [ 0 , 0 ]
, [ 0 , 100 ]
, [ 100 , 0 ]
,
and [ 100 , 100 ]
.