Devo ammettere che non conosco alcun metodo di interrogazione normale con cui risolvere questo problema. C'è solo un modo che conosco ed è usare il confronto di oggetti MongoDBs. Per fare ciò cambieresti la tua struttura per essere qualcosa sulla falsariga di:
{
ps: [a,b]
}
oppure:
{
ps: {p1:a,p2:b}
}
E poi interrogherai come:
db.col.find({ p: [a,b] })
oppure:
db.col.find({ p: {p1:a, p2:b} })
C'è un problema immediato con questo però. Dipende dall'ordine delle chiavi, il che significa che se il tuo a
e b
sono in realtà il contrario in un altro documento che non corrisponderà. Quindi dovrai assicurarti che ti preoccupi dell'ordine quando risparmi se lo fai.
Spero che ti aiuti,