帮助中心/最新通知

质量为本、客户为根、勇于拼搏、务实创新

< 返回文章列表

【服务器相关】MongoDB数据查询方法干货篇

发表时间:2025-06-16 03:46:00 小编:主机乐-Yutio

本文主要给大家介绍了MongoDB数据查询的相关内容,对大家具有一定的参考价值,需要的朋友们一起来学习学习吧。

导入测试数据

在开始之前我们应该先准备数据方便演示,这里我插入的了几条数据,数据如下:

find()

其中query表示查找的条件,相当于mysql中where子句,projection列出你想要查找的数据,格式为db.collection.find(find(<query filter>, <projection>))

实例:

下面不带参数的查找,将会查找出所有的结果

**注意:这里的一个 projection不能 同时 指定包括和排除字段,除了排除 _id字段。 在 显式包括 字段的映射中,_id 字段是唯一一个您可以 显式排除 的。

查询内嵌文档

上述例子中插入的school数据就表示内嵌文档

完全匹配查询

完全匹配查询表示school中的查询数组必须和插入的数组完全一样,顺序都必须一样才能查找出来

查询操作符

下面我们将配合查询操作符来执行复杂的查询操作,比如元素查询、 逻辑查询 、比较查询操作。我们使用下面的比较操作符”$gt” 、”$gte”、 “$lt”、 “$lte”(分别对应”>”、 “>=” 、”<” 、”<=”)

实例

下面查询年龄在20-30之间的信息

迭代游标的查询

学过高级语言的朋友都知道迭代的问题,像java,下面使用迭代的方法查询


var cursor=db.usr.find();
//这里使用迭代输出所有的数据
while(cursor.hasNext()) //这里的hasNext()是判断是否下一个中还有可迭代的值,如果没有返回false
{
printjson(cursor.next()); //这里的cursor.next是迭代的输出,printjson是代替print(tojson())
}
print cursor.count() //输出其中有多少个数据
cursor.forEach(printjson); //forEach输出
var document=cursor.toArray(); //将迭代对象转换成数组
print document[0]; //以数组的形式输出

总结

本篇文章到此结束,如果您有相关技术方面疑问可以联系我们技术人员远程解决,感谢大家支持本站!


联系我们
返回顶部