Definición
$boxEspecifica un rectángulo para un Geoespacial
$geoWithinConsulta para devolver los documentos que se encuentran dentro de los límites del rectángulo, según sus datos de ubicación basados en puntos. Cuando se utiliza con el$boxEl operador, devuelve documentos$geoWithinbasados en coordenadas de cuadrícula y no consulta formas GeoJSON.Para utilizar el operador, debe especificar las esquinas inferior izquierda y superior derecha del rectángulo en un objeto de
$boxmatriz:{ <location field>: { $geoWithin: { $box: [ [ <bottom left coordinates> ], [ <upper right coordinates> ] ] } } } Importante
Si utiliza longitud y latitud, especifique primero la longitud.
Comportamiento
La consulta calcula distancias utilizando geometría plana.
Las aplicaciones pueden usar $box sin un índice geoespacial. Sin embargo, los índices geoespaciales admiten consultas mucho más rápidas que sus equivalentes sin indexar.
Sólo el índice geoespacial 2d $box admite.
Ejemplo
La siguiente consulta de ejemplo devuelve todos los documentos que están dentro del cuadro que tiene puntos en: [ 0 , 0 ], [ 0 , 100 ], [ 100 , 0 ] y [ 100 , 100 ].
db.places.find( { loc: { $geoWithin: { $box: [ [ 0, 0 ], [ 100, 100 ] ] } } } )