CouchDB Map / Reduce Error似乎是一个简单的查询

时间:2016-05-06 17:07:06

标签: json mapreduce couchdb

我有一个非常简单的地图/减少我需要完成。我需要在数据库中获取所有唯一docType值的列表。但是,只要我添加Reduce函数,就会出现以下错误:

"Expression does not eval to a function." etc.

我正在关注CouchDB Cookbook和WIKI的例子,这很简单,所以我不确定它为什么会失败。

地图代码如下:

function(doc){ if(doc.docType) emit(doc.docType,1); }

这将返回每个docType,但没有任何不同的分组。

减少量直接来自我见过的样本:

function reduce(key,values){ return null; }

这会立即引发上述错误......我错过了什么?

非常感谢任何帮助。

谢谢!

1 个答案:

答案 0 :(得分:1)

在CouchDB中添加处理函数时,不应包含函数标识符,将其视为匿名函数。 (它与CouchDB如何将你的字符串演绎成JS函数有关,其中我不知道具体的细节)

因此,对于reduce函数,请不要使用reduce标识符。

function (keys, values) {
  return null;
}