Querying array of nested objects

2019-04-24 09:43发布

Say I have this JSON (sample - a real-life example can be found at apple itunes rss feed) stored in a RethinkDB table called 'test':

{
    "feed": {
        "entry": [
            {
                "title": {
                    "label": "Some super duper app"
                },
                "summary": {
                    "label": "Bla bla bla..."
                }
            },
            {
                "title": {
                    "label": "Another awsome app"
                },
                "summary": {
                    "label": "Lorem ipsum blabla..."
                }
            }
        ]
    }
}

How would I write a ReQL query in JavaScript in order to fetch the summary of all entries (entry) which have title containing the string "xyz"? I expect the query result to return an array of matching entry objects, not an array of matching feed.

标签: rethinkdb
1条回答
霸刀☆藐视天下
2楼-- · 2019-04-24 10:27

If I properly understood what you want to do, this query should be what you are looking for:

r.table("feeds").concatMap(function(doc) {
    return doc("feed")("entry")
}).filter(function(entry) {
    return entry("title")("label").match("xyz")
})
查看更多
登录 后发表回答