MongoDB的安装及使用
- MongoDB
- 1、MongoDB的安装与启动
- 2、创建一个数据库 名字grade
- 3、数据库中创建一个集合名字 class
- 4、集合中插入若干数据文档格式如下
- 5、查找
- 查看班级所有人信息
- 查看班级中年龄为8岁的学生信息
- 查看年龄大于10岁的学生信息
- 查看年龄在 4---8岁之间的学生信息
- 找到年龄为6岁且为男生的学生
- 找到年龄小于7岁或者大于10岁的学生
- 找到年龄是8岁或者11岁的学生
- 找到兴趣爱好有两项的学生
- 找到兴趣爱好有draw的学生
- 找到既喜欢画画又喜欢跳舞的学生
- 统计爱好有三项的学生人数
- 找出本班年龄第二大的学生
- 查看学生的兴趣范围
- 将学生按年龄排序找到年龄最大的三个
- 删除所有 年级大于12或者小于4岁的学生
- 增加、更新、删除、统计
- 将小红的年龄变为8岁 兴趣爱好变为 跳舞 画画
- 追加小明兴趣爱好 唱歌
- 小王兴趣爱好增加 吹牛 打篮球
- 小李增加爱好,跑步和唱歌,但是不要和以前的重复
- 该班所有同学年龄加1
- 删除小明的sex属性
- 删除小李兴趣中的第一项
- 将小红兴趣中的画画爱好删除
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’}})