Devo admitir que não conheço nenhum método de consulta normal para resolver esse problema. Existe apenas uma maneira que eu conheço e é usar a comparação de objetos do MongoDBs. Para fazer isso, você mudaria sua estrutura para algo como:
{
ps: [a,b]
}
ou:
{
ps: {p1:a,p2:b}
}
E então você faria uma consulta como:
db.col.find({ p: [a,b] })
ou:
db.col.find({ p: {p1:a, p2:b} })
Há um problema imediato com isso embora. Depende da ordem das chaves, o que significa que se o seu
a
e b
são na verdade o contrário em outro documento, ele não corresponderá. Portanto, você precisará certificar-se de que se preocupa com o pedido ao salvar se fizer isso. Espero que ajude,