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 } })

浙公网安备 33010602011771号