0

使用这个数据集,我试图做一个查询,返回所有文档,相关文章的排名。但我不知道是否可以仅使用 mongo 查询。

content_business : {
id : {….} ,
content : {
    uid : « 01234 »,
    FL : "bla",
    langRef : 1,
    articles : [ 
        {
            name : « aName »,
            rank : 104
        },
        {
            name : « unNom »,
            rank : 102
        }
    ]
}
}

一个内容包含一个 langRef。这是用于获取正确文章的索引。这里的值为 1 表示相关的文章是索引为 1 { name : « unNom », rank : 102 } 的文章。

目前我做了一个 db.find({« FL : bla »}),然后通过一个外部程序我得到了相关的排名(文章排序[langRef].rank)

但不确定这是更好的解决方案。

你有什么想法吗?

问候,

模糊。

4

1 回答 1

0

据我了解,这并不是真正的一种:

我在条目中得到了什么:

content_business : {
    id : {….} ,
    content : {
        uid : « 01234 »,
        FL : "bla",
        langRef : 1,
        articles : [ 
            {
                name : « aName »,
                rank : 104
            },
            {
                name : « unNom »,
                rank : 102
            }
        ]
    }
},
{
    id : {….} ,
    content : {
        uid : « 99999 »,
        FL : "bla",
        langRef : 0,
        articles : [ 
            {
                name : « aaaa »,
                rank : 888
            },
            {
                name : « bbbb »,
                rank : 102
            }
        ]
    }
}

我想要的结果

{
    id : {...},
    content : { name : "unNom", rank : 102}
},
{
    id : {...},
    content : {name : "aaa", rank : 888}
}

第一个文档命名为 unNom & rank 102,因为指定的 langRef 为 1

第二个文档的名称为“aaa”,排名为 888,因为指定的 langRef 为 0

问候,模糊。

于 2015-09-17T09:33:26.133 回答