MongoDB安装与基本操作

本文演示了MongoDB的安装配置,创建数据库mydb,并向students集合中插入学生数据。展示了如何查询特定专业学生数量、筛选年龄条件的学生信息,更新学生资料,计算平均年龄,统计各专业学生人数,以及进行复杂的聚合操作。同时,还涉及到了删除数据字段和整个集合的操作。
摘要由CSDN通过智能技术生成

1、完成MongoDB的安装配置,创建数据库mydb,给指定的集合添加文档

db.students.insert([
{"_id":"1001","name":"程明","sex":"男","age":19,"major":"计算机应用技术","credits":52,score:92},
{"_id":"1002","name":"刘萍","sex":"女","age":18,"major":"移动应用开发","credits":51,score:88},
{"_id":"1003","name":"张静","sex":"女","age":20,"major":"计算机应用技术","credits":48,score:96},
{"_id":"1004","name":"陈好","sex":"女","age":20,"major":"软件技术","credits":53,score:97},
{"_id":"1005","name":"施行","sex":"男","age":20,"major":"计算机应用技术","credits":54,score:96},
{"_id":"1006","name":"刘文平","sex":"女","age":18,"major":"软件技术","credits":50,score:86},
{"_id":"1007","name":"李德胜","sex":"男","age":20,"major":"计算机应用技术","credits":55,score:95},
{"_id":"1008","name":"苏锦州","sex":"男","age":18,"major":"移动应用开发","credits":50,score:70},
{"_id":"1009","name":"张文杰","sex":"女","age":20,"major":"软件技术","credits":53,score:40},
{"_id":"1010","name":"王林","sex":"男","age":18,"major":"移动应用开发","credits":47,score:87},
{"_id":"1011","name":"程梦凡","sex":"男","age":19,"major":"软件技术","credits":46,score:66},
{"_id":"1012","name":"陈玉婷","sex":"女","age":19,"major":"计算机应用技术","credits":45,score:82},
{"_id":"1013","name":"张春华","sex":"男","age":19,"major":"软件技术","credits":45,score:64},
{"_id":"1014","name":"苏秦","sex":"女","age":18,"major":"计算机应用技术","credits":41,score:77},
{"_id":"1015","name":"李雨桐","sex":"男","age":21,"major":"移动应用开发","credits":49,score:81},
{"_id":"1016","name":"唐开平","sex":"女","age":18,"major":"软件技术","credits":42,score:74},
{"_id":"1017","name":"罗世杰","sex":"男","age":21,"major":"移动应用开发","credits":57,score:64},
{"_id":"1018","name":"张可欣","sex":"女","age":20,"major":"计算机应用技术","credits":54,score:47},
{"_id":"1019","name":"刘柔","sex":"男","age":22,"major":"移动应用开发","credits":61,score:81},
{"_id":"1020","name":"王可可","sex":"女","age":17,"major":"计算机应用技术","credits":37,score:67},
{"_id":"1021","name":"王林","sex":"男","age":21,"major":"移动应用开发","credits":61,score:95}
])

2.请用查询语句显示计算机应用技术专业的学生人数

db.students.find({"major":"计算机应用技术"}).count()

3.请用查询语句显示年龄大于19岁的女生信息

db.students.find({"age":{$gt:19}, "sex":"女"})

 

 4.请将陈好的专业(major)修改为“移动应用开发”

db.students.update({"name":"陈好"},{$set:{"major":"移动应用开发"}});

5.请给软件技术专业的所有女生添加一个字段course,值为MongoDB

db.students.updateMany({"major":"软件技术","sex":"女"},{$set:{"course":"MongoDB"}})

7.请将李德胜的年龄减少2岁

db.students.update({"name":"李德胜"},{$inc:{"age":-2}})

8.查询各个专业学生的姓名、性别、专业和年龄,并按专业升序,年龄降序排列

db.students.find({}).sort({"major":1,"age":-1})

9.查询软件技术和移动应用开发专业学生的平均年龄

db.students.aggregate([
   {$match: {$or:[{major:"移动应用开发"},{major:"软件技术"}]}},
  {$group:{_id:"$major",avg:{$avg:"$age"}}}
])

10.查看计算机应用技术专业男生和女生的总学分,最高学分和最低学分

db.students.aggregate([
    {$match:{major:"计算机应用技术"}},
{$group:{_id:"$major",sum:{$sum:"$credits"},max:{$max:"$credits"},min:{$min:"$credits"}}}
])

 

11.查询各个专业学生的平均成绩,第一个人的成绩和最后一个人的成绩

db.students.aggregate([
{$group:{_id:"$major",avg:{$avg:"$score"},first:{$max:"$score"},end:{$min:"$score"}}}
])

 

 12.统计各个专业的学生人数并按人数从多到少排序

db.students.aggregate([
    {$group:{_id:"$major",number:{$sum:1}}},
    {$sort:{res:1}}
])

 13.对年龄大于18岁的学生姓名、性别、年龄、专业、成绩按照专业进行分组统学生人数,只显示人数大于4 的

db.students.aggregate([
    {$match:{age:{$gt:18}}},
   {$group:{_id:"$major",number:{$sum:1}}},
    {$match:{number:{$gt:4}}}
])

14.请删除计算机应用技术专业男生的成绩(score)字段

db.students.updateMany({"major":"计算机应用技术","sex":"男"},{$unset:{score:1}})

 

15.请删除学生集合

db.students.remove({});
db.students.drop();

 

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未满3岁

我爱你,你爱我,蜜雪冰城甜蜜蜜

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值