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组合使用