【MongoDB】嵌套数组查询方案
From:http://stackoverflow.com/questions/12629692/querying-an-array-of-arrays-in-mongodb
数据
db.multiArr.insert({"ID" : "fruit1","Keys" : [["apple", "carrot", "banana"]]}) db.multiArr.insert({"ID" : "fruit2","Keys" : [["apple", "orange", "banana"]]})db.multiArr.find({'Keys':{$elemMatch:{$elemMatch:{$in:['carrot']}}}}) { "_id" : ObjectId("506555212aeb79b5f7374cbf"), "ID" : "fruit1", "Keys" : [ [ "apple", "carrot", "banana" ] ] }db.multiArr.find({'Keys':{$elemMatch:{$elemMatch:{$in:['banana']}}}}){ "_id" : ObjectId("506555212aeb79b5f7374cbf"), "ID" : "fruit1", "Keys" : [ [ "apple", "carrot", "banana" ] ] } { "_id" : ObjectId("5065587e2aeb79b5f7374cc0"), "ID" : "fruit2", "Keys" : [ [ "apple", "orange", "banana" ] ] }
查询语句:
Interesting question, This will do the trick
db.multiArr.find({'Keys':{$elemMatch:{$elemMatch:{$in:['carrot']}}}})
$elemMatch used to check if an element in an array matches the specified match expression. so nested $elemMatch will go deeper into nested arrays
补充:
http://stackoverflow.com/questions/17360423/getting-a-dictionary-inside-a-list-by-key-in-mongodb-mongoengine
转载于:https://www.cnblogs.com/colipso/p/4431343.html
【MongoDB】嵌套数组查询方案相关推荐
- MongoDB嵌套数组,多维数组查询
一.嵌套数组 数据: {"arrays": [{"keyArrays": [{"key": "index"," ...
- 阿里云DLA新功能来袭 查询MongoDB嵌套字段更方便
背景 DLA之前对于MongoDB只支持简单类型的映射查询,对于嵌套字段无法直接查询,最近我们加入了对嵌套字段直接查询的支持,这篇文章给大家介绍一下. MongoDB嵌套字段查询详解 首先我们在Mon ...
- MongoDB数组查询
文章目录 MongoDB数组查询 数组匹配 查询数组元素 多条件数组元素查询 1. 复合过滤条件查询数组元素 2. 查询满足多个条件的数组元素 3. 按数组索引位置查询元素 4. 按数组长度查询数组 ...
- sql 查询嵌套数组
查询嵌套数组 如果一个表包含 STRUCT 的 ARRAY,则可展平 ARRAY 以查询 STRUCT 的字段.您也可以展平 STRUCT 值的 ARRAY 类型字段. 查询 ARRAY 中的 STR ...
- php mongo 范围查询语句,【MongoDB】数组和范围查询的相互作用
文档中的标量(非数组元素)必须与查询条件中的每一条语句相匹配.例如,如果使用{"x":{$gt:10, $lt:20}进行查询,只会匹配"X"键的大于等于10并 ...
- java查询mongodb 嵌套,查询嵌套文件mongoDB
这是我在文本模式下的示例MongoDB 我想检索每个用户的数据 . 我也想要_id因为在一个完整的文档中它有几个具有相似结构的_id . 我尝试使用unwind运算符,因为该对象包含嵌套数组,如下所示 ...
- mongodb和pymongo中,在多层嵌套数组中插入(更新)符合条件的元素
数据结构是多层嵌套数组: {"_id" : ObjectId("5de0c88a0f158bf0f60ff99a"),"province" ...
- 线上一个数组查询遇到的坑
背景 中午12点半,接到了线上MongoDB 数据库异常的告警通报: "CPU不间断飙升到百分百,业务也相应出现了抖动现象." 通过排查数据库主节点的日志,发现了这样的一个慢语句: ...
- Mysql or Mongodb LBS快速实现方案
http://www.wubiao.info/470 前两篇文章: 查找附近的xxx 球面距离以及Geohash方案探讨 (http://www.wubiao.info/372) 微信.陌陌 架构方案 ...
最新文章
- 深入理解Spring系列之六:bean初始化
- auto errored after 报错解决_MySQL5.7 group_by报错问题解决办法,大部分程序员都收藏了...
- linux下面升级 Python版本并修改yum属性信息
- 小米卢伟冰回应“低价误国”言论:华为是中国企业“低价”战略的榜样
- ctfshow-WEB-web6
- FMEA软件七步法(FMEAHunter)
- 2016 server win 假死_Win7运行程序无缘无故发生假死现象五种解决方法
- Words Reciting 2016.5.4
- Laravel Model 的 fillable (白名单)与 guarded (黑名单)
- 超好用的ps图表快速生成插件:PS拉框助手 for mac
- Android音乐浮窗播放器
- 自然语言处理模型:bert 结构原理解析——attention+transformer(翻译自:Deconstructing BERT)
- Office Tool Plus软件运行错误,缺少.net
- SRAM、PSRAM、SPI FLASH初步认识
- 4 计算机设备的折旧年限不低于,汇算清缴十大注意事项四:如何正确适用固定资产加速折旧政策...
- oracle 查询去年同期,问个算去年同期值的sql,该怎么处理
- 教你如何在社会上“混”
- mybatis代码自动生成工具之maven插件mybatis-generator-maven-plugin(mybatis逆向工程)
- 免签接口 个人二维码收款系统/微信支付支付宝支付二维码监听自动发货/个人免签系统/个人免签支付 微信.支付宝 个人支付监控
- CALayer创建图层(转)