MongoDB 学习笔记之 匹配完整数组

Posted AK47Sonic

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB 学习笔记之 匹配完整数组相关的知识,希望对你有一定的参考价值。

匹配完整数组:

 

创建一个集合(包含数组)

db.ArrayTest.insert({name: "Sky" , address: [{"street" : "JingKe", num: 12, code: 200101},{"street" : "GuangLan", num: 1, code: 222201}]})
db.ArrayTest.insert({name: "Bill" , address: [{"street" : "ZhangJiang", num: 12, code: 200101},{"street" : "JingKe", num: 19, code: 222201}]})

我想查询"street" : "JingKe", num: 12的文档。

db.ArrayTest.find({"address.street": "JingKe", "address.num": 12})

返回了2条记录,结果事与愿违,因为以上写法匹配的只是key而不是文档,所以我们要使用$elemMatch

db.ArrayTest.find({address: {"$elemMatch": {"street" : "JingKe", "num" : 12}}})

现在可以得到预想的结果了。

 

以上是关于MongoDB 学习笔记之 匹配完整数组的主要内容,如果未能解决你的问题,请参考以下文章

MongoDB 学习笔记之 $push,$each,$slice组合使用

MongoDB 学习笔记之 DBRef

MongoDB 学习笔记之 Aggregation Pipeline

NodeJS学习笔记之MongoDB模块

MongoDB系列之学习笔记教程汇总

MongoDB系列之学习笔记教程汇总