初学MongoDB,整理了一些基本操作

有点乱,大家凑合看哈 0.0

 

查询
db.student.find();
db.student.find({sex: "女"});
db.student.find().count();


插入
db.student.insert((name: "张三", age: 15, sex: "男"));
插入多条
db.student.insert([
    {name: "张三", age: 15, sex: "女"},
    {name: "李四", age: 65, sex: "男",friend:"丽丽"},
    {name: "王五", age: 35, sex: "男"},
    {name: "赵六", age: 16, sex: "男"},
    {name: "小七", age: 17, sex: "女"},
]);


修改(默认修改一条,如没有此属性将会自动添加)
未涉及的数据将会删除
db.student.update({"name" : "王五"},{"age" : 88});
修改选中数据
db.student.update({"name" : "小七"},{$set:{name: "七小",age: 18}});
移除数据中的某个属性
db.student.update({"name" : "李四"},{$unset:{sex:1 }});
修改多条(符合条件的都会被修改)
db.student.updateMany({"sex" : "男"},{$set:{hobby: "学习"}});


删除(默认删除所有符合条件数据)
db.student.remove({"age":88});
删除一条
db.student.remove({"age":88},true);
删除所有
db.student.remove({ });

练习


//1.创建并进入kawhi数据库
use kawhi;
db

//2.向数据库colleges集合中插入六个文档
db.colleges.insert([
    {name: "HTML5"},
    {name: "CSS3"},
    {name: "JS"},
    {name: "NODEJS"},
    {name: "PYTHON"},
    {name: "PHP", intro: "世界上第二好的语言"}
]);

//3.查询colleges集合中的文档
db.colleges.find();

//4.再插入一个文档
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为 “python”的文档
db.colleges.update({name: "PYTHON"},{$set:{name: "大数据"}});

//9.删除name为PHP的文档的intro属性
db.colleges.update({name: "PHP"},{$unset:{intro: 1}});

//10.向name为HTML5的文档中,添加一个   
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的文档中。添加一个新的核心课程 “微信小程序”
db.colleges.update({name: "HTML5"},{$push:{"classes.core": "微信小程序"}});
db.colleges.update({name: "HTML5"},{$addToSet:{"classes.core": "公众号开发"}});

//13.向name为HTML5的文档中,删除基础课程“abc”
db.colleges.update({name: "HTML5"}, {$pull:{"classes.base": "abc"}});

//14.删除colleges集合
db.colleges.remove({ });
db.colleges.drop();

//15.向集合demos中插入10000个文档
var arr = [];
for(var i=0; i<10000; 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({counter: {$lte: 10}});
db.demos.find().limit(10);

//21.查看demos集合中的第11条到20条数据
db.demos.find().skip(10).limit(10);

//22.查看demos集合中的第21条到30条数据
db.demos.find().skip(20).limit(10);

//23.查询HTML5学院的所有老师
var cno = db.person.findOne({"cname" : "HTML5学院"}).cno;
db.section.find({cno: cno});

//24.查询JAVA学院的所有员工
var cno = db.person.findOne({"cname" : "Java学院"}).cno;
db.section.find({cno: cno});

//25.查询工资大于20000的员工
db.section.find({wages: {$gt: 20000}});

//26.查询工资在10000-20000之间的员工
db.section.find({wages: {$gte: 10000, $lte: 20000}});

//27.查询工资小于10000或大于25000的员工
db.section.find({$or:[{wages: {lt: 10000}},{wages: {gt: 20000}}]});

//28.为所有薪资低于10000的员工增加工资1000元
db.section.updateMany({wages:{$lte: 10000}}, {$inc:{wages: 1000}});

//29.排列(1:升序;2:降序)
db.section.find().sort({wages:-1});
db.section.find().sort({wages:-1, _id: -1});

//30.查询指定数据(1显示0不显示)
db.section.find({ }, {name: 1, _id: 0, wages: 1});
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值