嵌套元素查询|学习笔记

简介: 快速学习嵌套元素查询

开发者学堂课程【快速掌握 MongoDB 数据库嵌套元素查询】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/400/detail/5201


嵌套元素查询

 

MongoDB 数据里面每一个集合数据可以继续保存其它的集合数据,例如有些学生需要保存家长信息

db.students.insert ( { "name" :"高大拿–A", "sex":"男", "age" :19, "score":89,"address

"course" :["语文","数学","英语","音乐","政治"]

"parents": [

{ "name" :"高大拿- A(父亲)" , "age" : 50"job":"工人""}})

{ "name" :"高大拿- A(母亲)" , "age" : 46"job":"职员""}})

db.students.insert({ "name"∵:"高大拿–B","sex":"

" ,"age":19,"score":89,"address

"course":["语文","数学",

"parents" : [

{"name": "高大拿-B(父亲)", "age" : 50 , "job":"处长""},

{ "name": "高大拿-B(母亲)", "age" : 46 , "job":"局长""}})

db.students.insert( {"name"∵"高大拿- C""sex"."男","age ":19,"score":89,"address"

"course":["语文","数学","英语"],“

"parents": [

i "name": "高大拿-C(父亲)", "age" : 50 , "job":"工人""},I

{ "name”: "高大拿-C(母亲)", "age" : 46 , "job":"局长"}})

此时给出的内容是嵌套的集合,而这种集合的数据的判断只能够通过“$elemMatch”完成。

范例:查询出父母有人是局长的信息。

db.students.find(-

{

"$and" :[

{"age" : {"$gte" : 19}},

{"parents" : {

"$elemMatch" : i"job":"局长"}。

}

}]}).pretty() ;-

结果:

"_id": objectId("5594b504eecd74894d1a0001") ,

"name":“高拿- c”,

"sex"”:男“,

"age” : 19,

"score": 89,

"address" :“海淀区,

"course"": [

语文","数学,“英语"

],

parents" : [

(

""name" : "高拿- c 〔父亲),

"age" : 50

job” :"工人“

}

{

"name" : “高大拿-c(母亲)”,

"age” : 46,

job" :"局长

}

由于这种查询的时候条件比较麻烦,所以如果可能,尽量别搞这么复杂的数据结构组成。

相关文章
|
4月前
|
Java 容器
07 Java数组与数组操作(定义+遍历+排序+增删改查)(上)
07 Java数组与数组操作(定义+遍历+排序+增删改查)
61 8
|
4月前
|
存储 Java API
07 Java数组与数组操作(定义+遍历+排序+增删改查)(下)
07 Java数组与数组操作(定义+遍历+排序+增删改查)
45 4
|
5月前
|
存储 语音技术 索引
语音识别,列表的定义语法,列表[],列表的下标索引,从列表中取出来特定的数据,name[0]就是索引,反向索引,头部是-1,my[1][1],嵌套列表使用, 列表常用操作, 函数一样,需引入
语音识别,列表的定义语法,列表[],列表的下标索引,从列表中取出来特定的数据,name[0]就是索引,反向索引,头部是-1,my[1][1],嵌套列表使用, 列表常用操作, 函数一样,需引入
|
6月前
|
JavaScript 前端开发
原生JS如何查询元素属性
原生JS如何查询元素属性
52 0
|
存储 JSON PHP
PHPJSON嵌套对象和数组的解析方法
在PHP编程开发中,JSON是一种非常常用的数据格式。它具有简单、轻量和易于解析的特点,非常适合用于数据交换和存储。当我们处理JSON数据时,经常需要解析嵌套的对象和数组,本文将介绍几种解析方法。
108 1
13.从入门到精通:Python 集合 集合的基本操作 1、添加元素 2、移除元素 3、计算集合元素个数 4、清空集合 5、判断元素是否在集合中存在 集合内置方法完整列表
13.从入门到精通:Python 集合 集合的基本操作 1、添加元素 2、移除元素 3、计算集合元素个数 4、清空集合 5、判断元素是否在集合中存在 集合内置方法完整列表
|
Python
巧用for循环嵌套结构
巧用for循环嵌套结构
101 0
leetcode_341. 扁平化嵌套列表迭代器
题目链接: 341. 扁平化嵌套列表迭代器 前排提示,这是一道跟树有关的题目,而且是 N 叉树,关于 N 叉树的入门题目可以参考我之前的一篇文章,leetcode 之浅谈 N 叉树 题目 给你一个嵌套
leetcode_341. 扁平化嵌套列表迭代器
|
JSON 数据格式 Python
一日一技:包含非hashable元素的列表如何去重并保持顺序?
一日一技:包含非hashable元素的列表如何去重并保持顺序?
114 0
|
JSON 前端开发 数据格式
weex-过滤数组中的元素并进行删除
weex-过滤数组中的元素并进行删除
89 0
下一篇
DataWorks