首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用嵌套ID在JSON中查找对象

使用嵌套ID在JSON中查找对象
EN

Stack Overflow用户
提问于 2012-11-08 23:43:54
回答 2查看 682关注 0票数 0

我有一个这样的mongo收藏品

代码语言:javascript
运行
复制
{"stores": [{"name": "foo",
             "songs": [ {"id": "", "name": "", "artist": "", "category": "", "tags": []} ],
             "songsSchedule": [
                               {
                                "song_id": "",
                                "date": ,
                                "user": "",
                                "help": ,
                                "partners": [{"user": ""}],
                                "likes":
                               }
                             ]
 }]}

我想从the songsSchedule song_id获取歌曲名称和歌手,我试过了,但不起作用

代码语言:javascript
运行
复制
var query = { _id: fn.generateID(req.params.store_id), songsSchedule: { $exists: true } };
var select = { songsSchedule:1 };
var array = [];

client("stores", function(err, collection) {
    if (err) 
       return res.json(fn.status("30"));

  collection.findOne(query, select, function(err, store) {
        if (err || !store) 
           return res.json(fn.status("31"));

    for (var i in store.songsSchedule) {
      var song = store.songsSchedule[i];
      array.push(song.song_id);
    }

    collection.find({ _id: fn.generateID(req.params.store_id), "songs._id": { $in: array } }, function(err, songs) {

      res.json(songs);
    });
    });
});

我真的不知道这是不是最好的方法

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-09 00:12:25

我不完全清楚你所说的“从songsSchedule song_id获取歌曲名称和歌手”是什么意思,但是这个查询看起来会很混乱。

如果是我,我会考虑把歌曲和songSchedule拆分到各自的集合中,以便于查询。

票数 1
EN

Stack Overflow用户

发布于 2012-11-09 01:41:37

在您的文档示例中,“歌曲”字段包含不包含"_id“字段的文档。

代码语言:javascript
运行
复制
    "songs": [ {"name": "", "artist": "", "category": "", "tags": []} ]

但是,您的find()查询是在"songs._id“字段上查询的。

另外,我不太熟悉json()方法,但是它能处理游标吗?

致以敬意,

Kay

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13292393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档