ho trovato questa soluzione, ma non saprei se è a via giusta... mi sembra un pò astrusa anche se funziona.. forse si potrebbe risolvere con qualcosa di piu semplice e performante?db.collection.findOne({$and: [{ usersIds: {$size: 2} },{ usersIds: {$all: ["P8gST2vqKF29GwipL","pn5FqCGT6ACXLfRW8"]} }]});
Grazie per chiunque voglia dare un contributo/opinione!
Il giorno domenica 30 marzo 2014 05:11:52 UTC+2, Stefano Cudini ha scritto:salve!scusa magari è una roba banale.. solo che è un po che cerco e non trovo nulla! Probabilmente non sto cercando con le keywords giuste!Comunque mi serve una cosa semplicissima, devo cercare due elementi stringa all'interno di una campo array dei docs di una collection!I due campi stringa sono ad esempio due id utenti:"P8gST2vqKF29GwipL" e "pn5FqCGT6ACXLfRW8"ed il campo array in cui devo cercare è semplicemente:{...usersIds:["P8gST2vqKF29GwipL","pn5FqCGT6ACXLfRW8"]...}che sta all'interno di documenti che possono avere sia gli id da me cercati oppure averne di piu di meno o di altri!pero a me serve trovare il documento che contenga solo ed esclusivamente quei due id stringa e niente altroa prescindere anche dallordine in cui sono presenti gli elementi.
Spero di essermi spiegato ;-{Grazie mille a chi mi risponderà!Stefano
--
Hai ricevuto questo messaggio perché sei iscritto al gruppo "mongodb-it" di Google Gruppi.
Per annullare l'iscrizione a questo gruppo e non ricevere più le sue email, invia un'email a mongodb-it+...@googlegroups.com.
Per postare in questo gruppo, invia un'email a mongo...@googlegroups.com.
Visita questo gruppo all'indirizzo http://groups.google.com/group/mongodb-it.
Per altre opzioni visita https://groups.google.com/d/optout.
> db.test.insert({userId: [1,2,3,4]})
> db.test.insert({userId: [1,2]})
> db.test.insert({userId: [3,4,5]})
> db.test.insert({userId: [1,3,4]})
> db.test.findOne({userId: [1,2]})
{ "_id" : ObjectId("53396a951eb2b6f261a3bba3"), "userId" : [ 1, 2 ] }
> db.test.find({userId: [1,2]})
{ "_id" : ObjectId("53396a951eb2b6f261a3bba3"), "userId" : [ 1, 2 ] }
> db.test.insert({userId: [1,2]})
> db.test.find({userId: [1,2]})
{ "_id" : ObjectId("53396a951eb2b6f261a3bba3"), "userId" : [ 1, 2 ] }
{ "_id" : ObjectId("53396b191eb2b6f261a3bba6"), "userId" : [ 1, 2 ] }
>
Ti serve qualcosa di diverso?