如何在couchdb中设置group = true

时间:2017-04-30 07:16:55

标签: python couchdb

我正在尝试使用map / reduce来查找couchDB中的数据重复 map函数是这样的:

function(doc) {
   if(doc.coordinates) { 
       emit({
           twitter_id: doc.id_str, 
           text: doc.text,
           coordinates: doc.coordinates
       },1)};
   }
}

和reduce函数是:

function(keys,values,rereduce){return sum(values)}

我想在同一个键中找到数据的总和,但它只是将所有内容添加到一起并得到结果:

<Row key=None, value=1035>

这是组的问题吗?如何将其设置为true?

1 个答案:

答案 0 :(得分:0)

假设您正在使用pypi中的couchdb软件包,您需要传递一个包含视图所需的所有选项的字典。

例如:

import couchdb

# the design doc and view name of the view you want to use
ddoc = "my_design_document"
view_name = "my_view"

#your server
server = couchdb.server("http://localhost:5984")
db = server["aCouchDatabase"]
#naming convention when passing a ddoc and view to the view method
view_string = ddoc +"/" + view_name
#query options
view_options = {"reduce": True,
                "group" : True,
                "group_level" : 2}
#call the view
results = db.view(view_string, view_options)

for row in results:
    #do something
    pass