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

Como você consulta não é nulo no Mongo?


Isso retornará todos os documentos com uma chave chamada "URL DA IMAGEM", mas eles ainda podem ter um valor nulo.
db.mycollection.find({"IMAGE URL":{$exists:true}});

Isso retornará todos os documentos com uma chave chamada "URL DA IMAGEM" e um valor não nulo.
db.mycollection.find({"IMAGE URL":{$ne:null}});

Além disso, de acordo com os documentos, $exists atualmente não pode usar um índice, mas $ne pode.

Editar:Adicionando alguns exemplos devido ao interesse nesta resposta

Dadas essas inserções:
db.test.insert({"num":1, "check":"check value"});
db.test.insert({"num":2, "check":null});
db.test.insert({"num":3});

Isso retornará todos os três documentos:
db.test.find();

Isso retornará apenas o primeiro e o segundo documentos:
db.test.find({"check":{$exists:true}});

Isso retornará apenas o primeiro documento:
db.test.find({"check":{$ne:null}});

Isso retornará apenas o segundo e o terceiro documentos:
db.test.find({"check":null})