码迷,mamicode.com
首页 > 数据库 > 详细

Mongodb04 - 数据操作(数组)

时间:2017-12-27 19:36:50      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:数值   rss   com   pretty   整数   保存   god   font   seo   

1、首先在MongoDB里面是支持数组保存的,一旦支持数组保存,需要针对数组的数据进行匹配;

  (01)、范例:保存一部分数组数据

         db.students.insert({"name":"古大神 - A", "age":15, "sex": "男", "seore": 90, "adderss": "海淀区", "course": ["语文", "数学", "英语", "音乐", "美术"]});

      db.students.insert({"name":"古大神 - B", "age":16, "sex": "男", "seore": 88, "adderss": "海淀区", "course": ["语文", "数学", "政治"]});

      db.students.insert({"name":"古大神 - C", "age":19, "sex": "女", "seore": 98, "adderss": "海淀区", "course": ["语文", "音乐", "美术"]});

      db.students.insert({"name":"古大神 - D", "age":16, "sex": "男", "seore": 80, "adderss": "朝阳区", "course": ["语文", "美术"]});

  (02)、此时的数据中包括了数组数据,而后需要针对于数组数据进行判断,可以使用几个运算符: $all、$size、$slice、$elemMatch 

  (03)、范例:查询同时参数语文和数学课程的学生  =>  {"$all": ["语文","数学"]}   =>  "$all" 筛选内容必须包含筛选条件及更多内容的项,只能多不能少;

       db.students.find({"course": {"$all": ["语文", "数学"]}}).pretty();  

       “$all”计算可以用在数组上,也可以用于一个数据的匹配上  =>   db.students.find({"adderss": {"$all": ["海淀区"]}}).pretty();  

       技术分享图片

  (04)、既然在集合中保存了数组信息,那么数组就可以利用索引操作:key.index的方式定义索引

       范例:查询数组信息中第二个内容(index = 1),为数学的信息   =>  db.students.find({"course.1": "数学"}).pretty(); 

       技术分享图片

  (05)、范例:查询出值参加两门课程的学生:使用运算符 $size 来进行数值的控制  =>  db.students.find({"course": {"$size": 2}}).pretty()

         技术分享图片

  (06)、控制数组返回的数量:使用$slice控制  

      范例:返回年龄为19岁所有学生的信息,但是要求只显示参加两门课  =>  db.students.find({"age": 19}, {"course": {"$slice": 2}}).pretty();  

         # 2:整数表示前两门,-2:表示后两门,[1,2]: 表示跳过第一个后面两个

        技术分享图片

 

 

          

Mongodb04 - 数据操作(数组)

标签:数值   rss   com   pretty   整数   保存   god   font   seo   

原文地址:https://www.cnblogs.com/patriot/p/8127238.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!