在rethinkdb中对数组进行分组和计数

时间:2015-06-09 11:03:29

标签: rethinkdb reql

我的json数据如下:

y=0

我想找到每个艺术家的别名数量。

所以我使用以下命令:

{

"artist": {
    "aliases": {
        "name": "Thaddeuz Anderson"
    } ,
    "data_quality": "Correct" ,
    "id": 2377 ,
    "name": "DJ Thadz" ,
    "namevariations": {
        "name": [
            "D. J. Thadz" ,
            "D.J. Thadz" ,
            "DJ Thaz" ,
            "Thadz"
        ]
    } ,
    "profile": "" ,
    "realname": "Thaddeuz Anderson"
} ,
"id": "040a5506-5d4a-4beb-a27b-90f7cf3b0a69"

 }
 {

"artist": {
    "data_quality": "Correct" ,
    "id": 2273 ,
    "name": "Riff HiFi" ,
    "namevariations": {
        "name": "Riff Hiffi"
    } ,
    "profile": ""
} ,
"id": "041bdd4d-f7ae-4bb0-b971-88f252281421"

 } 

我得到的结果是减1。如何获取别名数组中的元素总数?请帮忙

1 个答案:

答案 0 :(得分:0)

每当你group某事时,你需要ungroup它。因此,对于您的查询,您需要在最后添加ungroup

r.table('artists')('artist')('aliases').group('name').count().ungroup()

话虽如此,如果您想要的是获得每个艺术家的别名数量,group并不是真正的方法。您最好使用merge向文档追加别名计数。