02.mongodb命令行的命令

1.文档的增删改查

   //插入(json格式存储bson),显示writeResult就成功了
   db.xxcollection.insert({"_id":"1","ngs":"aaa","time":new Date()}) //json的格式
  //查询所有
   db.xxcollection.find()
  //查看全部集合
  show collections
  //直接插入数组(多个对象)
   db.xxcollection.insertMany([
	{"_id":"1","ngs":"aaa","time":new Date()},
                {"_id":"2","ngs":"aaa","time":new Date()}
     ])
  //查询特定的
   db.xx.find({"_id":"1"})
   //查询特定的字段 类比mysql,后面一个括号代表 0排除还是1不排除 ,默认显示_id, 相当于select _id,ngs from xx;
   db.xx.find({_id:"1"},{_id:0,ngs:1})
  //只查一条,相当于mysql的limit 1
   db.xx.findOne({ngs:"aaa"}) //插入后自动变对象

2.异常

 try{   //插入可能会报异常,我们故意设置一个重复的_id ,???没啥卵用
      db.xxcollection.insert({"_id":"1","ngs":"aaa","time":new Date()})

   }catch(e){
      print(e);
   }

3.文档数据的更新

    //覆盖修改,需要数据转换为int类型,(感觉是个坑爹之处,对象还要转成对应的数据才能更改,b站网友:6.0以后不用转对象)
   db.xx.update(条件,更新的数据)
   db.comment.update({_id:"1001"},{"articleid":"1000121"})) //直接覆盖之前的
    db.comment.update({_id:"1001"},{"articleid":1000121})  //这是类型不同
   //局部修改
   db.comment.update({"_id":"2"},{$set:{"articleid":998}})
    //只修改1003的一条 multi代表如果有多条数据就修改多条
   db.comment.update({userid:"1003"},{$set:{nickname: "zs"}})   
   //修改998的全部数据,必须数据类型一一对应才能改
  db.comment.update({articleid:998},    {$set:   {"articleid":"9999"}}   ,  {multi:true}    ) 
  //自动增长
   db.comment.update({_id:"1"},{$inc:{"articleid":1}});

4.文档数据的删除 集合(数据库)—>文档(表)

   db.comment.remove({_id:"1"})
  //全部删除,删库跑路
   db.xx.remove({})

5.分页查询

   //查看有多少条,相当于mysql select count(*) from comment;
    db.comment.count()
  //带条件
    db.comment.count({articleid:"998"})
  //限制条数,查前2条
   db.comment.find().limit(2);
   //skip跳过前2条,就是第二页(假设每页2个数据)
  db.comment.find().limit(2).skip(2);

6.排序查询必须先find后sort()

   //升序1 降序-1 ,相当于mysql select * from stu order by id desc;
   //下面是基于先userId降序后,后面相同的likenum升序(如果前面id相同的话)
   db.comment.find().sort(userId:-1,likenum:1);

7.正则查询

   db.comment.find({content: /开水/})

8.比较查询

   //$gt大于  $lt小于 $eq等于  $ne不等于 $gte大于等于 $lte小于等于
  db.comment.find({likenum:{$gt:888}});

9.包括

   db.comment.find({_id:{$in:["2","3","4"]}});

10.条件查询???

   //大于等于700小于2000
  db.comment.find(
      {
        $and:[
                     {
                            likenum:
                               {
                                   $gte:NumberInt(700)
                                }
                       } ,
                      {
                         likenum:
                                  {
                                     $lt:NumberInt(2000)
                                   }
                       
                       }
                 ]
      }
  )
  db.comment.find({$and:[{state:{$eq:"1"}}]})
  db.comment.find({$and:[{likenum:{$gte:NumberInt(700)}},{likenum:{$lt:NumberInt(2000)}}]})
  db.comment.find({$or:[{articleid:{$eq:"9999"}},{likenum:{$gte:NumberInt(3000)}}]})

   #书写技巧,mongo代表有3个{},第一个是条件,第二个是update的数据,第三个是设置multi查询多条数据
   #and在第一个{}里面写,是个数组表示条件,条件有是一个对象,对象又是条件likenum:{$gte:NumberInt(888)}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值