如何查询MongoDB集合中不存在指定键_contentType的文档
查询MongoDB集合中不存在指定键的文档
要获取集合中不存在_contentType键的所有文档,不能直接用空字符串或null匹配,原因如下:
{"_contentType": ""}匹配的是该键存在但值为空字符串的文档,你的查询返回0说明集合里没有这类文档{"_contentType": null}会同时匹配键不存在和键存在但值为null的文档,可能无法满足你精准查找“键不存在”的需求
正确的方式是使用MongoDB的$exists操作符,指定值为false,精准匹配该键不存在的文档:
db.fs.files.find({"_contentType": {"$exists": false}}).count()
如果需要严格排除“键存在但值为null”的文档(确保只返回完全没有_contentType键的文档),可以组合$exists和$ne操作符:
db.fs.files.find({"_contentType": {"$exists": false, "$ne": null}}).count()
内容的提问来源于stack exchange,提问作者Alberto Blanco Cala
相关产品推荐
相关产品推荐

