Artículos
MongoDB

Operador MongoDB IN

06/Feb/2014

El operador MongoDB IN es un operador que nos sirve para simular un operador MongoDB OR con una lista de posibles valores. Es decir, nos evitaría el escribir OR filtro 1 OR filtro 2… Eso sí, siempre y cuando sea sobre el mismo campo del documento.

La estructura de un operador MongoDB IN es la siguiente:

db.coleccion.find({campo:{$in:['valor1','valor2',...,'valorN']}});

Vemos que la primera parte del filtro es el campo sobre el que queremos aplicar el operador MongoDB, mientras que la otra el el operador MongoDB en si mismo.

Si vemos la parte del operador MongoDB IN podemos observar que es sencilla ya que es un array de los valores sobre los que aplicaremos el filtro separados por comas.

Si volvemos a nuestra colección de ejemplo 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 }

Vamos a atacar el campo ciudad indicando una lista de posibles valores. De esta forma la consulta MongoDB IN se quedaría de la siguiente forma:

cursor = db.ciudades.find({ciudad:{$in:['Avila','Zamora','Madrid']}});

Ya solo nos queda ver el resultado de la consulta recorriendo el cursor:

while (cursor.hasNext()){
  printjson(cursor.next());
}

Ya hemos visto en este sencillo ejemplo como utilizar el operador MongoDB IN para consultar por varios valores de un campo.

Código Fuente

Descárgate el código fuente de Operador MongoDB IN
Y si te ha gustado nuestro código fuente puedes regalarnos una estrella Star

Vídeos sobre MongoDB

Disfruta también de nuestros artículos sobre MongoDB en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test MongoDB

¿Te atreves a probar tus habilidades y conocimiento en MongoDB con nuestro test?

Test MongoDB
Suscribir
Notificar de
guest
0 Comentarios
Opiniones integradas
Ver todos los comentarios