学无止境·MySQL⑨(MongoDB)

本文详细介绍了MongoDB的安装过程,包括在Linux系统上配置repo和安装命令。接着展示了如何创建数据库和集合,以及如何插入、查询、更新和删除数据。内容涵盖不同条件的查询操作,如年龄范围、兴趣爱好等,并提供了修改和管理文档属性的示例。
摘要由CSDN通过智能技术生成

MongoDB

1、MongoDB的安装与启动

vim /etc/yum.repos.d/mongdbd.repo
[mongodb-org]
name=mongodb-org
baseurl=http://mirrors.tuna.tsinghua.edu.cn/mongodb/yum/el7-5.0/
gpgcheck=0
yum install mongodb-org
systemctl start mongod
systemctl status mongod
在这里插入图片描述

2、创建一个数据库 名字grade

use grade;
在这里插入图片描述

3、数据库中创建一个集合名字 class

db.createCollection(“class”)
在这里插入图片描述

4、集合中插入若干数据文档格式如下

{name:‘zhang’,age;10,sex:‘m’,hobby:[‘a’,‘b’,‘c’]}
hobby: draw sing dance basketball football pingpong computer

在这里插入图片描述

5、查找

查看班级所有人信息

db.class.find()
在这里插入图片描述

查看班级中年龄为8岁的学生信息

db.class.find({age:8})
在这里插入图片描述

查看年龄大于10岁的学生信息

db.class.find({age:{$gt:10}})
在这里插入图片描述

查看年龄在 4—8岁之间的学生信息

db.class.find({age:{ g t : 4 , gt:4, gt:4,lt:10}})

在这里插入图片描述

找到年龄为6岁且为男生的学生

db.class.find({age:6,sex:‘m’})

找到年龄小于7岁或者大于10岁的学生

db.class.find({KaTeX parse error: Expected '}', got 'EOF' at end of input: or:[{age:{gt:10}},{age:{$lt:7}}]})
在这里插入图片描述

找到年龄是8岁或者11岁的学生

在这里插入图片描述

db.class.find({age:{$in:[8,11]}})

找到兴趣爱好有两项的学生

db.class.find({hobby:{$size:2}})

找到兴趣爱好有draw的学生

db.class.find({hobby:“draw”})在这里插入图片描述

找到既喜欢画画又喜欢跳舞的学生

db.class.find({hobby:{$all:[“draw”,“dance”]}})在这里插入图片描述

统计爱好有三项的学生人数

db.class.find({hobby:{$size:3}}).count()
在这里插入图片描述

找出本班年龄第二大的学生

db.class.find().sort({age:-1}).skip(1).limit(1)
在这里插入图片描述

查看学生的兴趣范围

db.class.distinct(‘hobby’)
在这里插入图片描述

将学生按年龄排序找到年龄最大的三个

db.class.find().sort({age:-1}).limit(3)
在这里插入图片描述

删除所有 年级大于12或者小于4岁的学生

db.class.remove({KaTeX parse error: Expected '}', got 'EOF' at end of input: or:[{age:{gt:12}},{age:{$lt:4}}]})
在这里插入图片描述

增加、更新、删除、统计

将小红的年龄变为8岁 兴趣爱好变为 跳舞 画画

db.class.update({“name”:“小红”},{$set:{age:8,hobby:[‘dance’,‘draw’]}})
在这里插入图片描述

追加小明兴趣爱好 唱歌

db.class.update({“name”:“小明”},{$push:{hobby:‘sing’}})
在这里插入图片描述

小王兴趣爱好增加 吹牛 打篮球

db.class.update({“name”:“小王”},{$push:{hobby:[‘吹牛’,‘basketball’]}})
在这里插入图片描述

小李增加爱好,跑步和唱歌,但是不要和以前的重复

db.class.update({‘name’:‘li’},{KaTeX parse error: Expected '}', got 'EOF' at end of input: …dToSet:{hobby:{each:[‘running’,‘sing’]}}})
在这里插入图片描述

该班所有同学年龄加1

db.class.update({},{$inc:{age:1}},false,true)
在这里插入图片描述

删除小明的sex属性

db.class.update({name:‘小明’},{$unset:{sex:0}})
在这里插入图片描述

删除小李兴趣中的第一项

db.class.update({name:‘li’},{$pop:{hobby:-1}})
在这里插入图片描述

将小红兴趣中的画画爱好删除

db.class.update({name:‘小红’},{$pull:{hobby:‘draw’}})
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值