MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

In Jongo, come trovare più documenti da Mongodb in base a un elenco di ID

Vedo due opzioni per ottenere una ricerca su più ID:

// 1. find with an array of ids
ObjectId[] ids = {id, id, id};
collection.find("{_id:{$in:#}}", ids).as(Friend.class);

// 2.find a list of ids
collection.find("{_id:{$in:[#, #, #]}}", id, id, id).as(Friend.class);

findOne offre un metodo conveniente con un ObjectId e, se usi una String annotata invece di un ObjectId , il Oid.withOid il metodo trasforma la tua String in un ObjectId .

Ma, alla fine, questo input del metodo di convenienza viene trasformato in una normale query in formato stringa. Quindi, se la comodità non si adatta alle tue esigenze, prova invece una query.