📜  MongoDB –使用Mongo Shell查询文档

📅  最后修改于: 2021-04-17 04:09:52             🧑  作者: Mango

MongoDB为您提供读取操作,以从集合中检索文档或向集合中查询文档。您可以使用db.collection.find()方法执行读取操作。此方法从集合中选择或查看文档,然后将光标返回到选定的文档。

find()是一个mongo shell方法,可以在多文档事务中使用。通过此方法显示的文档为非结构化形式。如果要以结构化形式获取数据,则将pretty()方法与find()方法一起使用。

db.collection.find().pretty()

此方法自动迭代光标以显示集合的前20个文档。如果您希望此方法将显示20个以上的文档,请键入它以继续迭代。

例子:

在以下示例中,我们正在使用:

db.collection.find(filter, projection)

选择所有文档:

在此示例中,我们选择了贡献者集合的所有文档,并使用db.collection.find()方法显示在屏幕上。

句法:

Database: GeeksforGeeks
Collection: contributor
Document: five documents that contain the details of the contributors in the form of field-value pairs.

选择所有组织形式的文档:

在此示例中,我们将选择贡献者集合的所有文档,并使用带有pretty()方法的db.collection.find()方法以有组织的形式显示它们。

句法:

db.contributor.find()

选择满足给定条件的文档:

在此示例中,我们仅选择满足给定条件(即语言:“ C#”)的那些文档。换句话说,我们只选择那些使用C#语言的贡献者。

Synatx:

db.contributor.find().pretty()

选择满足给定条件的文档(使用查询运算符):

在此示例中,我们仅选择那些满足给定条件的文档,此处条件是使用查询运算符创建的。换句话说,我们只选择那些使用C#或Java语言的贡献者。

句法:

db.collection.find({field: value})

在这里,我们使用$in运算符。该运算符用于匹配给定数组中指定的任何值。

db.collection.find({field: {operator: value}})

选择满足给定条件的文档(使用AND条件):

在此示例中,我们正在创建一个复合查询,其中我们使用逻辑AND为多个字段指定条件。在这里,逻辑AND连接复合查询的子句,以便查询仅选择集合中满足所有条件的那些文档。换句话说,在此示例中,我们仅检索来自CSE分支并使用Java语言的那些贡献者。

选择满足给定条件的文档(使用OR条件):

在此示例中,我们将创建一个复合查询,其中我们使用$ or运算符指定条件。在这里,$ or运算符连接复合查询的子句,以便该查询仅选择集合中满足至少一个条件的那些文档。换句话说,在此示例中,我们仅检索那些来自CSE分支或使用Java语言的贡献者。

选择满足给定条件的文档(同时使用AND和OR条件):

在此示例中,我们将同时使用AND和OR运算符设置filter。换句话说,在此示例中,我们仅检索来自ECE分支且年龄为23岁或正在使用Java语言的那些贡献者。