MongoDB——使用练习

mongoDB的基本指令

show dbs:显示当前所有的数据库
use 数据库名 : 进入到指定数据库中
db : 显示当前所在的数据库
show collections : 显示数据库中的所有集合

小练习题目:

//1.创建并进入it_like数据库
//2.向数据库的colleges集合中插入六个文档(Html5, Java, Python, 区块链, K12, <PHP, "世界上最好的编程语言">)  
//3.查询colleges集合中的文档
//4.向数据库的colleges集合中插入一个文档(Golang)    
//5.统计数据库colleges集合中的文档数量
//6.查询数据库colleges集合中name为Html5的文档
//7.向数据库colleges集合中的name为Html5的文档,添加一个intro属性,属性值为"打通全栈任督二脉!"
//8.使用{name:"大数据"} 替换 name 为 "K12"的文档   
//9.删除name为PHP的文档的intro属性
//10.向name为Html5的文档中,添加一个classes:{base:["h5+c3","js","jQuery", "abc"] , core:["三大框架","node.js"]}
//11.查询有核心课程为 三大框架 的文档
//12.向name为Html5的文档中,添加一个新的核心课程 "微信小程序"
//13.向name为Html5的文档中,删除基础课程"abc"
//14.删除colleges集合

小练习记录:

//1.创建并进入it_like数据库
use it_like
db
//2.向数据库的colleges集合中插入六个文档(Html5, Java, Python, 区块链, K12, <PHP, "世界上最好的编程语言">)  

db.colleges.insert([
    {name:'Html5'},
    {name:'Java'},
    {name:'Python'},
    {name:'区块链'},
    {name:'K12'},
    {name:'PHP',intro:'世界上最好的语言'}
    ]);
//3.查询colleges集合中的文档
db.colleges.find({})
//4.向数据库的colleges集合中插入一个文档(Golang)  
db.colleges.insert({name:'Golang'})
//5.统计数据库colleges集合中的文档数量
db.colleges.find({}).count()
//6.查询数据库colleges集合中name为Html5的文档
db.colleges.find({name:'Html5'})
//7.向数据库colleges集合中的name为Html5的文档,添加一个intro属性,属性值为"打通全栈任督二脉!"
db.colleges.update({name:'Html5'},{$set:{intro:'打通全栈任督二脉'}})
//8.使用{name:"大数据"} 替换 name 为 "K12"的文档 
db.colleges.replaceOne({name:'K12'},{name:'大数据'})  
//9.删除name为PHP的文档的intro属性
db.colleges.update({name:'PHP'},{$unset:{intro:1}})
//10.向name为Html5的文档中,添加一个classes:{base:["h5+c3","js","jQuery", "abc"] , core:["三大框架","node.js"]}
db.colleges.update({name:'Html5'},{$set:{classes:{base:["h5+c3","js","jQuery", "abc"] , core:["三大框架","node.js"]}}})
//11.查询有核心课程为 三大框架 的文档
db.colleges.find({'classes.core':'三大框架'})
//12.向name为Html5的文档中,添加一个新的核心课程 "微信小程序"
//第一种.push写法 (用于向数组中添加一个新元素)
db.colleges.update({name:'Html5'},{$push:{'classes.core':'微信小程序'}})
//第二种.addToSet写法(用于向数组中添加一个新元素,如果数组中存在则不会添加)
db.colleges.update({name:'Html5'},{$addToSet:{'classes.core':'微信小程序2'}})
//13.向name为Html5的文档中,删除基础课程"abc"
db.colleges.remove({'classes.base':'abc'})
//14.删除colleges集合
db.colleges.remove({})
//15.删除数据库
db.colleges.drop()

show dbs

练习小记录2:

//use liushuai_test
//db
//15.向集合中中插入10000个文档 
//第一种方法:(不推荐效率很低)
//for(var i=0;i<9999;i++){
 //   db.demos.insert({nums:i})
    //}
    //db.demos.find()
    //db.demos.remove({})
//第二种方法:(数组方法,先拼接然后一次性插入效率高)
var arr = [];
for(var i=0;i<9999;i++){
   arr.push({counter:i})
}
db.demos.insert(arr)

db.demos.find()
//16.查询demos中counter为666的文档
db.demos.find({counter:666})
//17.查询demos中counter小于666的文档
db.demos.find({counter:{$lt:666}})
//18.查询demos中counter大于666的文档
db.demos.find({counter:{$gt:666}})
//19.查询demos中counter大于66小于666的文档
db.demos.find({counter:{$gt:66,$lt:666}})
//20.查看demos集合中的前10条数据
db.demos.find({}).limit(10)
//21.查看demos集合中的第11条到20条数据
db.demos.find().skip(11).limit(10)
//22.查看demos集合中的第21条到30条数据
db.demos.find().skip(21).limit(10)

分页公式:
xxx.find().skip((页数 - 1) * 每页显示的条数).limit(每页的条数)

练习小记录3:

//23. 创建company数据库, 将itlike和section集合导入到数据库中
db.itlike.insert([
   {cno: "1001", cname: "HTML5学院"},
   {cno: "1002", cname: "Python学院"},
   {cno: "1003", cname: "Java学院"},
   {cno: "1004", cname: "Go学院"}
   ]);
   db.itlike.remove({})
   db.itlike.find({})
db.section.insert([
  {name: "胡雪", job: "辅导员", wages: 10000.0, cno: "1001", bonus: 1688},
  {name: "赵乐乐", job: "讲师", wages: 20000.0, cno: "1001", bonus: 2600},
  {name: "冯璐璐", job: "辅导员", wages: 12000.0, cno: "1001"},
  {name: "赵晓雪", job: "辅导员", wages: 12000.0, cno: "1002", bonus: 1688},
  {name: "孙芙蓉", job: "讲师", wages: 13000.0, cno: "1002", bonus: 1288},
  {name: "胡霍恋", job: "辅导员", wages: 11000.0, cno: "1003", bonus: 2688},
  {name: "张思琪", job: "班主任", wages: 9000.0, cno: "1003"},
  {name: "王红叶", job: "辅导员", wages: 8000.0, cno: "1002", bonus: 1675},
  {name: "叶子奇", job: "高级讲师", wages: 30000.0, cno: "1001", bonus: 2345},
  {name: "高伟伟", job: "辅导员", wages: 17000.0, cno: "1002", bonus: 1345}
])

db.section.remove({})
   db.section.find({})
   
//24.查询HTML5学院的所有老师
var cno = db.itlike.findOne({cno:'1001'}).cno
db.section.find({cno:cno})
//25.查询工资大于20000的员工
db.section.find({wages:{$gt:20000}})
//26.查询工资在10000-20000之间的员工
db.section.find({wages:{$lt:20000,$gt:10000}})
//27.查询工资小于10000或大于25000的员工
db.section.find({$or:[{wages:{$gt:25000}},{wages:{$lt:10000}}]})
//28.为所有薪资低于10000的员工增加工资1000元
db.section.updateMany({wages:{$lte:10000}},{$inc:{wages:1000}})
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值