sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur frågar du efter är inte null i Mongo?

Detta kommer att returnera alla dokument med en nyckel som heter "IMAGE URL", men de kan fortfarande ha ett nollvärde.

db.mycollection.find({"IMAGE URL":{$exists:true}});

Detta kommer att returnera alla dokument med både en nyckel som heter "IMAGE URL" och ett icke-nullvärde.

db.mycollection.find({"IMAGE URL":{$ne:null}});

Dessutom, enligt dokumenten, kan $exists för närvarande inte använda ett index, men $ne kan.

Redigera:Lägger till några exempel på grund av intresse för det här svaret

Med tanke på dessa infogar:

db.test.insert({"num":1, "check":"check value"});
db.test.insert({"num":2, "check":null});
db.test.insert({"num":3});

Detta kommer att returnera alla tre dokument:

db.test.find();

Detta returnerar endast det första och andra dokumentet:

db.test.find({"check":{$exists:true}});

Detta returnerar endast det första dokumentet:

db.test.find({"check":{$ne:null}});

Detta returnerar endast det andra och tredje dokumentet:

db.test.find({"check":null})


  1. Förstå latens med Redis-Cli

  2. En timeout inträffade efter 30 000 ms val av en server med CompositeServerSelector

  3. Exempel på att använda RedisStore i socket.io

  4. Kommunikation mellan två Docker-behållare på macOS 10.12