MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come si esegue una query per non è nullo in Mongo?

Questo restituirà tutti i documenti con una chiave chiamata "URL IMAGE", ma potrebbero comunque avere un valore nullo.

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

Questo restituirà tutti i documenti con una chiave chiamata "URL IMAGE" e un valore non nullo.

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

Inoltre, secondo i documenti, $exists attualmente non può utilizzare un indice, ma $ne può.

Modifica:aggiunta di alcuni esempi a causa dell'interesse per questa risposta

Dati questi inserti:

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

Questo restituirà tutti e tre i documenti:

db.test.find();

Questo restituirà solo il primo e il secondo documento:

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

Questo restituirà solo il primo documento:

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

Questo restituirà solo il secondo e il terzo documento:

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