RethinkDB REQL查询以查找数组中不同值的出现次数

时间:2015-09-11 15:11:04

标签: rethinkdb rethinkdb-python reql rethinkdb-ruby rethinkdb-javascript

我在rethinkDB中有一个这样的表。

float

我希望Id和go_Id具有单个ID的计数和它们的出现次数。例如,所需的输出是

[{
    "Id": [
        12,
        13
    ],
    "group": "79",
    "go_Id": []
}, {
    "Id": [
        12,
        12,
        12,
        14
        14
    ],
    "group": "91",
    "go_Id": [
        16,
        16,
        16,
        19,
        19,
        20
    ]
}, {
    "Id": [
        12,
        12,
        13,
        13,
        11
    ],
    "group": "second",
    "go_Id": [
        16,
        17,
        17,
        16,
        17,
        17
    ]
}]

我应该怎么做?

我尝试根据id进行分组然后计数但似乎不起作用。像 [{ "Id": [ 12: 1 13: 1 ], "group": "79", "go_Id": [] }, { "Id": [ 12: 3 14: 2 ], "group": "91", "go_Id": [ 16: 3, 19: 2, 20: 1 ] }, { "Id": [ 12: 2, 13: 2, 11: 1 ], "group": "second", "go_Id": [ 16: 2, 17: 4, ] }]

这样的东西

1 个答案:

答案 0 :(得分:2)

这样的事情应该有效:

r.table('dev').merge(function(row) {
  return {Id: row('Id').group(function(x) { return x; }).count().ungroup()};
})