【问题标题】:How to get a "fieldcount" (like wordcount) on CouchDB/Cloudant?如何在 CouchDB/Cloudant 上获得“字段计数”(如字数)?
【发布时间】:2015-08-30 09:03:57
【问题描述】:

尝试获取字段计数,就像经典的字数统计示例一样。我认为这将是微不足道的......

但我得到了这个无用的结果......

{"rows":[
{"key":null,"value":212785214}
]}

我怎样才能得到我想要的……我的文档中使用的所有字段的清单,并计算它们出现的次数?

【问题讨论】:

    标签: javascript mapreduce couchdb word-count cloudant


    【解决方案1】:

    要获取文档中每个键的计数,请创建一个“映射”函数,如下所示:

    function (doc) {
      var keys = Object.keys(doc);
      for(var i in keys) {
        emit(keys[i], null);
      }
    }
    

    并使用内置的_count reducer。

    然后您可以通过访问视图来检索分组答案,如下所示:

    /mydb/_design/<designdocname>/_view/<viewname>?group_level=1
    

    这将产生这样的分组键和计数:

    {"rows":[
    {"key":"_id","value":4},
    {"key":"_rev","value":4},
    {"key":"a","value":3},
    {"key":"c","value":1}
    ]}
    

    【讨论】:

    • 工作起来就像一个魅力,但我有一个惊喜,我有很多次出现空键 ("") - 这意味着什么?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-02
    • 1970-01-01
    • 2015-09-20
    • 2017-01-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多