Mongodb增删改查
        【摘要】 
                    
                        
                    
                    启动数据库 
mongodb --path:数据库路径
1 
启动客户端 
mongo
1 
基本指令 
显示所有的数据库 show dbs显示所有集合 show collections 
增加文档 
新...
    
    
    
    启动数据库
mongodb --path:数据库路径
  
 - 1
 
启动客户端
mongo
  
 - 1
 
基本指令
- 显示所有的数据库
show dbs - 显示所有集合
show collections 
增加文档
新增一个文档
db.stus.insert({name:"猪八戒",age:28,gender:"男"});
  
 - 1
 
新增一组文档
db.stus.insert([
    {name:"沙和尚",age:28,gender:"男"},
    {name:"白骨精",age:18,gender:"女"},
    {name:"蜘蛛精",age:48,gender:"女"}
])
  
 - 1
 - 2
 - 3
 - 4
 - 5
 
查询
查询所有文档
db.stus.find();
  
 - 1
 
带条件查询
db.stus.find({name:"白骨精",age:18});
  
 - 1
 
find返回的是一个数组,可以通过下标进行获取
db.stus.find({name:"白骨精",age:18})[0];
  
 - 1
 
findOne返回的不是一个数组,返回的是第一个文档对象
db.stus.findOne({name:"白骨精",age:18});
  
 - 1
 
查询文档数目
db.stus.find({}).count();
  
 - 1
 
修改
db.stus.update(查询条件,新对象)
新对象对将旧对象中的所有数据替换掉
 默认只会修改第一个对象
db.stus.update({name:"猪八戒"},{age:18});
  
 - 1
 
修改文档中的单个属性
db.stus.update(
    {"_id":ObjectId("632078e44eb8dac8984e07f7")},
    {
        $set:{
            name:"沙僧"
        }    
    }
)
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 
删除文档中的属性
db.stus.update(
    {"_id":ObjectId("632078e44eb8dac8984e07f7")},
    {	$unset:{
    		address:"中北大学"
    	}    
    }
)
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 
update也可以修改多个属性
db.stus.update(
    {"name":"白骨精"},
    {
        $set:{
        address:"hhhhhhh"
        }
    },
    {
        multi:true
    }
)
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 - 11
 
updateMany()可以修改多个对象
db.stus.updateMany(
    {"name":"白骨精"},
    {
        $set:{
            address:"高老庄"
        }
    }
)
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 
删除
删除 remove 传递条件方式和move一样 删除所有的符合条件的 默认情况下会删除多个
db.stus.remove({_id:ObjectId("6320564db43a8991618e4811")})
  
 - 1
 
如果remove()第二个参数传递了一个true,则只删除一个
db.stus.remove({name:"白骨精"},true);
  
 - 1
 
如果只传递一个空对象,则清空集合,性能略差,先匹配,后删除
db.stus.remove({});
  
 - 1
 
删除集合
db.stus.drop();
  
 - 1
 
删除数据库
db.dropDatabase(); 
  
 - 1
 
逻辑删除
db.stus.insert([
    {
        name:"zbj",
        isDel:0
        },
    {
    name:"ts",
        isDel:0
        },
    {
    name:"swk",
        isDel:0
    }
]);
db.stus.updateOne({name:"ts"},{$set:{isDel:1}});
db.stus.find({idDel:0});
  
 
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 - 11
 - 12
 - 13
 - 14
 - 15
 - 16
 - 17
 - 18
 
文章来源: blog.csdn.net,作者:花花叔叔,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/qq_52077949/article/details/126865054
        【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
            cloudbbs@huaweicloud.com
        
        
        
        
        
        
        - 点赞
 - 收藏
 - 关注作者
 
            
           
评论(0)