mongoDB 简单的增删改查

   在上一篇文章中我们已经讲了mongodb怎么安装和数据库/表的创建。在这里我们讲mongoDB的数据库操作
      在mongo中对于不存在的表当你用db.表名 他会自动统计
下边用到的user是表明,db代表的是数据库

      添加(insert):
      db.user.insert({name:'zhangsam',age:12});
      添加多条数据
      db.user.insert([{name:'zhangsan1',age:13},
                      {name:'zhangsna2',age:12}])
      查询(find())
      db.user.find();  查询user所有(相当于select * from user)
      查询制定条件的数据
      db.user.find({name:'zhangsn'});
      查询user下边的name列
      db.user.find({},{name:1,_id:0})
      只显示name这一列(_id不显示)  grade等于1
      db.user.find({grade:1},{name:1,_id:0})
      删除表
      db.user.drop()
      删除那一条数据
      db.user.remove({age:12});
      remove中有第二个参数justtrue :true/false 默认是false
      Pg:db.user.remove({age:12},true) 只删除一条
      
      删除数据库
      db.dropDatabase();

      修改数据:$set multi
      Pg:
      db.user.update({name:'zhangsa'},{name:'zhansi'});
      修改user中name等于zhangsa 的修改成name等于 zhansi,这个时候name中等于zhangsa的其他列也都没有了
      修改制定的列,不影响别的列 (默认修改一行,如果修改多行,使用multi)
      Pg:
      db.user.update({name:'zhangsa'},{$set:{name:'yanp'}})
      db.user.update({name:'zhangsa'},{$set:{name:'zhang'}},{multi:true})
      添加一列$inc
      db.user.update({name:'zhangsa'},{$inc:{sex:500}})
      修改列名$rename
      db.user.update({name:'zhnagsa'},{$rename:{sex:'gender'}})
      删除一列$upset
      db.user.update({name:'zhangsa'},{$unset:{gender:'m'}})
  联合使用
      db.user.update({name:'zhangs'},{$set:{name:'yangp'}},{$inc:{sex:500}})
      修改的时候当一个列不存在直接添加进去$upsert
      db.user.update({name:'zhangs'},{$set:{name:'nihao'}},{$upsert:true})
      修改的时候当添加进去列的时候,设置列的值$setOnInsert
      db.user.update({name:'zhangs'},{$set:{name:'nihaos'},$setOnInsert{sex:'nan'}},{$upsert:true})


你可能感兴趣的:(mongodb)