javascript – 查询Mongo中的嵌套列表存在

前端之家收集整理的这篇文章主要介绍了javascript – 查询Mongo中的嵌套列表存在前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Mongo中有一个文档,其结构如下:
{ 
    "_id" : ObjectId("4eea7237d0ba3a04f20008fb"),"code" : "b2677c2809c844cc9d7e3e4ff8d95b46","city_id" : 4,"datetime" : ISODate("2011-12-13T18:41:44.062Z"),"plays" : [     
        {   
          "play_id" : 717224,"clicks" : [ ],"order" : 1,"MysqL_id" : 145
        }

我想查询其plays.clicks属性是非空列表的文档.我试过没有运气的存在.我认为这样的事情可能有用:

db.collection.find({plays.clicks.0: {$exists:true}})

但我相信这只会返回播放数组中第一个元素包含非空单击列表的文档.

有关如何完成这项任务的想法?

谢谢

解决方法

db.collection.find({plays.clicks.0:{$exists:true}})

是正确的语法,但是,因为播放是一个列表,查询将匹配播放中具有点击次数的任何文档.没有办法以这种方式为子元素检索数组的子集[1].有一个子/虚拟收藏票[2]

[1] http://www.mongodb.org/display/DOCS/Retrieving+a+Subset+of+Fields#RetrievingaSubsetofFields-RetrievingaSubrangeofArrayElements

[2] https://jira.mongodb.org/browse/SERVER-828

猜你在找的JavaScript相关文章