查询嵌套对象数组

cod*_*ash 8 rethinkdb

假设我有一个存储在名为'test'的RethinkDB表中的JSON(示例 - 可以在apple itunes rss feed中找到的实例):

{
    "feed": {
        "entry": [
            {
                "title": {
                    "label": "Some super duper app"
                },
                "summary": {
                    "label": "Bla bla bla..."
                }
            },
            {
                "title": {
                    "label": "Another awsome app"
                },
                "summary": {
                    "label": "Lorem ipsum blabla..."
                }
            }
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

我将如何使用JavaScript编写一个查询ReQL为了获取汇总的所有条目(中entry具有)标题包含字符串"XYZ"?我希望查询结果返回一个匹配的条目对象数组,而不是匹配的feed数组.

neu*_*ino 11

如果我正确地理解了您想要做的事情,那么这个查询应该是您正在寻找的:

r.table("feeds").concatMap(function(doc) {
    return doc("feed")("entry")
}).filter(function(entry) {
    return entry("title")("label").match("xyz")
})
Run Code Online (Sandbox Code Playgroud)