1
resposta

Buscar documentos no Mongo que não tenham uma chave especifica

É possível fazer uma consulta passando uma exceção, como por exemplo, "traga todos os documentos da coleção que não tenham a chave "XPTO"?

Motivo da pergunta: Em determinado momento eu comecei a adicionar uma chave boleana nos meus documentos para dizer se eles estavam cancelados ou não. Isso, em uma coleção que já tinha alguns documentos sem essa chave.

Eu quero continuar usando os elementos antigos, mas considerando todos como se não estivessem cancelados, ou tivessem a chave "{canceled: false}"

1 resposta

Oi Renato, tudo bem? Sim, você consegue fazer isso usando uma combinação de $or com $exists, então você consegue pegar os registros canceled como false e também os que nem possuem esse campo. Vai ficar mais ou menos assim:

{ $or: [ { canceled: { $exists: false } }, { "canceled" :  false } ] }