第六章 使用MongoDB shell 在MongoDB集合中查找文档

题纲:

  • db.collection.find()/findOne()
var cursor = db.collname.find();
cursor.forEach(w =>{
      printjson(w.charsets);
}
)
cursor.map(w =>{
    return w.charsets;
})

问与答

问: 有办法查询字段值为null的文档吗?
答:没有。查询运算符处理null值的方式各不相同。例如,如果您使用字段null(如{name:null})进行查询,这将返回name = null的文档 ,但还将返回没有name字段的文档。应避免根据字段值null进行查询; 在文档中不要将字段的值设置为null,而应不包含这样的字段,这样就可以使用运算符$exists进行查询了。

问:如果一个文档 多次与查询条件匹配,MongoDB会返回这个文档多次吗?
答:是的。您 可以使用方法cursor.snapshot()来遍历根据_id字段创建的索引,从而避免多次返回同一个文档。然而,cursor.snapshot()不能用于分片集合,也不能与sort()可hint()同时使用;
sort(),排序方法;
hint(), 语法:hint(index), 强制MongoDB使用一个或多个特定的索引进行查询。index可以是字符串, 如:hint("myindex_1"); 也可以是文档,其中的属性为索引名,而值为1,如hint({myIndex:1})

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容