操作的mongodb 版本号: 5.0.6
常用操作如下:
// 原子操作 db.col2.findAndModify({ query: { _id: ObjectId('623f547d6ac6657eff566709') // available: {$gt: 0} }, update: { $inc: {available: -1}, $push: {checkout: {by: 'abc',date: new Date()}} } }) // 查询一个文档 db.col2.find({title: 'java教程14442'}) // 根据tags 子文档里面的soce列筛选需要的信息 db.col2.aggregate([ { $match: { 'tags.soce': { $gte: 3 } } } ]) // 删除一个文档 db.col2.remove({_id: ObjectId('624069156ac6657eff56670a')}) // 通道查询操作 db.col2.aggregate([ { $project: { // 需要返回的列 _id: 0, title: 1, by: 1, likes: 1 } }, { // 筛选条件 $match: { likes: { $gte: 4, $lte: 88 } } }, { $group: { // 聚合 _id: '$title', count: { $first: '$likes' } } }, { $skip: 0 }, { $limit: 30 } ]) // 分组聚合操作 db.col2.aggregate([ { $group: {_id:'$title',num_total:{$sum:'$likes'}} } ]) // 创建索引 db.col2.createIndex({'title':1}, {background:true,expireAfterSeconds:3600}) //小于等于 db.col2.find({ // 'likes':{'$lte':98}, $or: [ { 'title':'MongoDB 教程' }, { 'by':'菜鸟教程', 'likes':{'$lte':98}, } ] }).skip(0).limit(50).sort({'likes':-1}) // 小于 db.col2.find({ 'likes':{'$lt':96} }) // 删除 db.col2.remove({'title':'java教程10'},1) // 更新 db.col2.update( {'title':'java教程10'}, {$set:{'title':'java教程010'}} ) // 新增 db.col2.insert({ title: 'java教程14442', description: 'MongoDB 是一个 Nosql 数据库', by: '菜鸟教程', url: 'http://www.runoob.com', tags: [ { name: 'java', soce: 3 }, { name: 'php', hot: 30 } ], likes: 36 })