MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Consulta Spring Data MongoDB AND/OR com vários parâmetros opcionais


Se você tentar cuidadosamente formatar manualmente sua consulta para ser mais legível, notará que cometeu alguns erros com os colchetes de fechamento.

Tente esta consulta em vez disso:
{ $and : 
    [{
       $and: 
        [
         {$or : [ { $where: '?0 == null' } , { a : ?0 }]}, 
         {$or : [ { $where: '?1 == null' } , { b : ?1 }]},
         {$or : [ { $where: '?2 == null' } , { c : ?2 }]}
        ]
    }]
}

Nota lateral:acho que um $and será suficiente, ou seja, remova o $and de nível superior operador.