Skip to content

MongoDB 查询文档

find 基本查询

javascript
db.users.find()                    // 返回集合中所有文档
db.users.find({ age: 25 })         // 条件:age 等于 25
db.users.find({ name: "张三", age: 25 })  // 多条件且关系

返回一个游标,在 Shell 中会自动迭代显示前若干条。

findOne 返回一条

javascript
db.users.findOne({ name: "张三" })

只返回匹配的第一条文档,无则返回 null

投影(只返回部分字段)

第二个参数指定要返回或排除的字段,1 表示包含,0 表示排除;_id 默认包含,不需要时可设为 0

javascript
db.users.find({}, { name: 1, age: 1, _id: 0 })
db.users.find({}, { password: 0 })  // 排除 password

条件查询示例

javascript
db.users.find({ age: { $gt: 20 } })       // 大于
db.users.find({ age: { $gte: 18, $lte: 60 } })  // 区间
db.users.find({ name: { $in: ["张三", "李四"] } })
db.users.find({ tags: "vip" })            // 数组包含

更多条件见 MongoDB 条件操作符