javascript - 左、右连接

标签 javascript rethinkdb

我有一个查询,它使用 eqjoin 从两个不同的表返回以下数据。我想将 leftright 结合起来,而不是执行 zip() (重写 name > 和 joined_at),我想将右侧对象的属性添加到左侧对象的属性中,并将其添加到名为 server_info 的属性中,并删除“左侧”并使其成为单个对象,如下所示一个 zip 操作,我如何直接在查询中执行此操作。

当前结果

[{
    "left":{
       "avatar":"a29f54048d9ec6c00913057333160a3e",
       "joined_at":"Thu Feb 25 2016 21:29:07 GMT+00:00",
       "name":"Zephy",
       "uid":"132166948359241728"
    },
    "right":{
       "icon":"2aab26934e72b4ec300c5aa6cf67c7b3",
       "id":"81384788765712384",
       "member_count":7888,
       "name":"Discord API",
       "owner_id":"53905483156684800",
    }
}]

预期结果

[{
    "avatar":"a29f54048d9ec6c00913057333160a3e",
    "joined_at":"Thu Feb 25 2016 21:29:07 GMT+00:00",
    "name":"Zephy",
    "uid":"132166948359241728"
    "server_info": {
       "icon":"2aab26934e72b4ec300c5aa6cf67c7b3",
       "id":"81384788765712384",
       "member_count":7888,
       "name":"Discord API",
       "owner_id":"53905483156684800",
    }
}]

最佳答案

您可以将 .map(function(row) { return row('left').merge({'server_info': row('right')}); }) 添加到末尾您的查询以获得该效果。

关于javascript - 左、右连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38152960/

相关文章:

javascript - <span> jQuery .click() 不工作

ruby - RethinkDB 单个请求中的多个查询

rethinkdb - 如何找出 RethinkDB 表的大小?

rethinkdb - 如何在 rethinkdb 中创建复合多索引?

rethinkdb - 在 RethinkDB 中使用 'replace' 与 'update' 冲突解决有什么功能差异

javascript - 简单的 javascript 更正(日期/时间)

javascript - d3.js 动态附加具有可变力边界的群

javascript - 在数据库中创建新记录 (Sails.js)

javascript - worldweatheronline API 响应错误

node.js - NodeJS 与 rethinkDB 的 promise