Per trovare documenti con array, con elementi nulli, eseguire:
db.collection.find({"keyWithArray":{$elemMatch:{"$in":[null], "$exists":true}}})
Secondo safaribooksonline
corretto null
la corrispondenza viene eseguita utilizzando $in
(perché non puoi usare $eq
con null
). Inoltre, confrontando con null
:
{"something":null}
abbinerà i documenti con il campo "qualcosa" impostato su null e tutti i documenti che non hanno affatto il campo "qualcosa". Quindi dobbiamo assicurarci che la chiave esista usando $exists
.