Si era sencillo realizar consultas mayor que en MongoDB, igual de sencillo es realizar consultas menor que en MongoDB. Solo tenemos que saber qué operador utilizar, ya que la dinámica será la misma.
El conjunto de datos del que partimos para las consultas menor que en MongoDB es nuestra colección de ciudades:
{ "_id" : ObjectId("525ab02733b01a66a9dcbc5b"), "ciudad" : "Madrid", "habitantes" : 3233527 } { "_id" : ObjectId("525ab02733b01a66a9dcbc5c"), "ciudad" : "Barcelona", "habitantes" : 1620943 } { "_id" : ObjectId("525ab02733b01a66a9dcbc5d"), "ciudad" : "Valencia", "habitantes" : 797028 } { "_id" : ObjectId("525ab02733b01a66a9dcbc5e"), "ciudad" : "Sevilla", "habitantes" : 702355 } { "_id" : ObjectId("525ab02733b01a66a9dcbc5f"), "ciudad" : "Zaragoza", "habitantes" : 679624 }
Como bien sabemos, para poder realizar una consulta en MongoDB debemos de utilizar el método find(). Y será dentro de los parámetros del metro dónde ejecutemos el filtro para conseguir nuestro objetivo de obtener consultas menor que con MongoDB.
db.ciudades.find();
Los operadores menor que en MongoDB son $lt y $lte. La estructura JSON será la siguiente:
{$lt:1000000}
Esta estructura la tenemos que aplicar a un campo, por ejemplo al campo habitantes:
{habitantes:{$lt:1000000}}
Ahora montamos la consulta con el método find(). El resultado será un cursor de documentos, así que asignamos la salida a un cursor:
cursor = db.ciudades.find({habitantes:{$lt:1000000}});
Solo nos quedará recorrer el cursor para ver los resultados:
while (cursor.hasNext()) {
printjson(cursor.next());
}