📜  MongoDB – db.collection.Find() 方法

📅  最后修改于: 2022-05-13 01:56:58.312000             🧑  作者: Mango

MongoDB – db.collection.Find() 方法

在 MongoDB 中, find()方法用于选择集合中的文档并将光标返回到所选文档。 Cursor 是指向文档的指针,当我们使用 find() 方法时,它返回一个指向所选文档的指针,并一一返回。如果我们想返回所有文档的指针,则使用 empty() 参数,它会一一返回所有文档。它只需要一些可选参数。第一个可选参数是我们想要返回游标的选择标准。要返回集合中的所有文档,请使用空文档({})。使用此方法您还可以替换嵌入的文档。您也可以在多文档交易中使用此方法。如果在 mongo shell 中使用这个方法,那么 shell 会自动迭代游标以显示集合中最多 20 个文档,如果你想继续就输入或者你可以手动迭代 find() 方法的结果使用 var 关键字将返回的游标分配给变量。您还可以使用游标方法修改此方法的行为。

句法:

可选参数:

  • selection_criteria:它指定选择标准。要返回集合中的所有文档,请使用空文档({})。该参数的类型是文档。
  • 投影:它指定要在符合选择标准的文档中返回的字段。要返回匹配文档中的所有字段,请删除此参数。它属于文档类型。

本文档需要:



{ field1: , field2:  ... }

这里如果字段的值为1/true则指定包含该字段,或者如果该字段的值为0/false则指定排除该字段。

返回:

它将光标返回到与选择条件匹配的文档。当 find() 方法返回文档时,该方法实际上是返回一个指向文档的游标。

例子:

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

  • 查找集合中存在的所有文档:
db.student.find()

  • 通过传递空文档查找集合中存在的所有文档:
db.student.find({})

  • 查找与给定过滤器查询匹配的所有文档(即年龄:18):
db.student.find({age:18})

  • 查找与给定过滤器查询匹配的嵌入文档:
db.student.find({score:{math: 230, science: 234}})

  • 仅显示指定字段(使用投影):
db.student.find({},{name:1, _id:0})

  • 使用 limit() 方法只显示两个文档:
db.student.find().limit(2)