mongoDB基础操作

创建/插入
db.collection.insertOne({doc}): 插入单个文档。=
db.collection.insertMany([{doc1}, {doc2}]): 插入多个文档。
db.collection.insert({doc}): 旧版插入方法(仍可用)。

查询
db.collection.find(query, projection): 查询文档。
query: 查询条件。
projection: 投影,指定返回哪些字段(1 包含,0 排除)。
db.collection.findOne(query): 返回一个文档。

// 查找所有
db.users.find()

// 条件查询:年龄等于25
db.users.find({ age: 25 })

// 比较操作符:年龄大于25 ($gt)
db.users.find({ age: { $gt: 25 } })

// 逻辑操作符:年龄大于25且名字是Alice ($and)
db.users.find({ $and: [{ age: { $gt: 25 } }, { name: "Alice" }] })

// 正则查询:名字以"A"开头
db.users.find({ name: /^A/ })

// 投影:只返回name和age字段,不返回_id
db.users.find({}, { name: 1, age: 1, _id: 0 })

更新

db.collection.updateOne(filter, update, options): 更新匹配的第一个文档。
db.collection.updateMany(filter, update, options): 更新所有匹配的文档。
db.collection.replaceOne(filter, replacement): 替换整个文档。

更新操作符:

$set: 设置字段值。
$unset: 删除字段。
$inc: 增加字段值。
$push / $addToSet: 向数组添加元素($addToSet 防止重复)。

// 将Alice的年龄设置为26
db.users.updateOne(
  { name: "Alice" },
  { $set: { age: 26 } }
)

// 给所有年龄大于20的用户增加1岁
db.users.updateMany(
  { age: { $gt: 20 } },
  { $inc: { age: 1 } }
)

删除

db.collection.deleteOne(filter): 删除匹配的第一个文档。
db.collection.deleteMany(filter): 删除所有匹配的文档。
db.collection.remove(filter): 旧版删除方法。

// 删除名字为Bob的用户
db.users.deleteOne({ name: "Bob" })

// 删除所有年龄小于18的用户
db.users.deleteMany({ age: { $lt: 18 } })
posted @ 2025-10-16 21:36  Look_Back  阅读(2)  评论(0)    收藏  举报