当前位置: 移动技术网 > IT编程>数据库>MongoDB > Mongodb 学习笔记(一)

Mongodb 学习笔记(一)

2019年06月21日  | 移动技术网IT编程  | 我要评论

   mongodb 是一款开源、跨平台、分布式,具有大数据处理能力的文档存储数据库。在 2007 年由 mongodb 软件公司开发完成,并实现全部代码源发展。目 前,该文档数据库被国内外众多知名网因所采纳,用于提高数据访问的处理速度 和大数据存储问题。 

基本操作命令 :

  show dbs  :  显示所有数据库(空数据库不会显示)。

    use dbname  : 切换至  数据库 dbname。

       db.stats()    显示 数据库状态

  db.dropdatabase()  删除当前数据库。

  db. getcollectionnames ()  查看当前数据库下的所有集合的名称

  show roles   查看当前数据库的用户角色权限及用户名/密码信息

 增删改查:

  插入:

  db.student.insert({"name":"jason","age":20})    student 为集合名称,如果没有该集合,会自动创建。

    db.student.insert([{"name":"dalie","age":30},{"name":"sun","sex":"male"}]) 插入多条记录 。 同一个集合中的文档,key 不用保持一致。

  document = {"name":"biao","age":12}

    db.student.insert(document);                 也可以用声明变量的方式  将文档插入集合中

  db.student.insert([{"name":"wang","age":11},{"name":"goudan","age":1}],{ordered:true}) 顺序插入  ordered为true时,如存在主键冲突的数据,会导致全部插入失败,false时,除出错记录外,其他记录正常插入。

       查询:

  db.student.find()   列出该集合内所有文档。

  db.student.find({"name":"jason"})  括号内 可以填写 匹配条件  类似于 sql 中where

  db.student.fingone()   db.student.findone({"name":"jason"})   列出集合内符合条件的第一条文档

   db.student.find().pretty()  将结果 以优美的形式展示。

        db.student.find({},{name:1,age:1,_id:0}).pretty()    可以设置要查询的key ,1显示,0不显示。

  db.student.find().limit(2)  返回前两条文档

   db.student.find().skip(2) 跳过前两条文档,显示 之后的所有文档。

   db.student.find().skip(2).limit(1) 显示第三条文档。

   db.student.find({name:{$in:["mike","jason"]}})    $in 实现 范围查询。$in 用于不同文档指定同一个 key 进行或条件匹配, $or 可以指定多个 key 或条件匹配。

  db.student.find({$or:[{name:"jason"},{age:12}]})

        

  更新:

   db.student.update({name:"jason"},{$set:{age1:12}})  

   $set  更新要修改的字段  $unset 删除该字段  $rename 更改字段名 $inc 修改数值做加法运算。

   db.collection.updateone() 。与 update()唯一的 区别是命令语法里少了 一个 multi: <boolean>选项, 也就是 updateone()只适用于符合条件的一条文档的修改任务。

   db.collection.updatemany() 。与 update()唯一的区别是命令语法里少了 一个 multi: <boolean>选项, 也就是 updatemany()只适用于符合条件的多条文档的修改任务。
   db.collection.replaceone() 。与 update()的区别有两处, 一个没有 multi: <boolean> 选项;另外一个在第二个参数 cupdate 的<update>)里不能有更新操作符。

  删除

  db.student.remove("name":"jason") 删除姓名为jason的文档。

   db.student.remove({}) 删除集合内所有文档,但如果要删除整个集合 db.student.drop() 效率更高,它会直接删掉集合及索引。

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网