目录

  1. MongoDB 查询文档概述
  2. 查询单个文档
  3. 查询多个文档
  4. 查询条件操作符
  5. 排序与限制结果
  6. 参考资料

MongoDB 查询文档概述

MongoDB 提供了强大的查询功能,允许开发者根据不同的条件检索集合中的文档。查询操作通过 find() 方法进行,可以使用多种查询条件来精确匹配文档。find() 方法返回一个游标,可以进一步使用各种方法对查询结果进行处理。


查询单个文档

要查询集合中的单个文档,可以使用 findOne() 方法。该方法根据查询条件返回集合中的第一个匹配文档。

db.collectionName.findOne({ query })

例如,查询 name 为 “Alice” 的文档:

db.users.findOne({ name: "Alice" })

该命令将返回 name 为 “Alice” 的第一个文档。如果没有找到匹配的文档,返回 null


查询多个文档

要查询多个文档,可以使用 find() 方法。该方法返回一个游标,可以遍历集合中所有符合查询条件的文档。

db.collectionName.find({ query })

例如,查询 age 大于等于 18 的所有文档:

db.users.find({ age: { $gte: 18 } })

返回结果将是一个游标,你可以使用 .toArray() 方法将其转换为数组,或者使用 forEach() 方法遍历每个文档。


查询条件操作符

MongoDB 支持多种条件操作符来进行更复杂的查询。例如:

  • $eq: 等于
  • $ne: 不等于
  • $gt: 大于
  • $gte: 大于等于
  • $lt: 小于
  • $lte: 小于等于
  • $in: 在指定数组内
  • $nin: 不在指定数组内

例如,查询 age 大于 25 且 name 在 [“Alice”, “Bob”] 中的所有文档:

db.users.find({ age: { $gt: 25 }, name: { $in: ["Alice", "Bob"] } })


排序与限制结果

MongoDB 允许在查询时对结果进行排序和限制。

  • 排序:使用 .sort() 方法进行排序。正数表示升序,负数表示降序。
  • 限制结果数量:使用 .limit() 方法限制返回的文档数量。

例如,查询 age 大于 18 的用户,并按 age 降序排列,限制返回前 5 个文档:

db.users.find({ age: { $gt: 18 } }).sort({ age: -1 }).limit(5)


参考资料


如需更多帮助或信息,请访问 www.52kanjuqing.com