我想设计一个我们可以用于分析的couchdb地图函数,我们的地图函数看起来像这样。可以发射键在数组的开始有可选的数组参数吗?
function (doc) {
var t;
var year;
var date;
var month;
var hours, minutes, seconds, milliSeconds;
if (doc.time && doc.zone && doc.user && doc.companyCode) {
t = new Date(Date.parse(doc.time));
year = t.getFullYear();
month = t.getMonth() + 1;
date = t.getDate();
milliSeconds = t.getMilliseconds();
//We emit this in the same sequence for group level queries.
emit([doc.companyCode, doc.zone, doc.user, doc.eventtype, year, month, date], 1);
}
}
我正在使用组级别,它工作得很好。
我想知道的是 - 我可以保留区域可选在这个或用户可选 这里是一些我想问这个地图/减少的查询。
1)2014年公司,区域和用户的所有事件是什么? - 通过保留一些时间参数是可选的,现在可以做到这一点。
2)我们可以问相同的查询某一年的事件是什么?我想在2014年找出公司代码的事件。我想让区域和用户可选。
3)保持这些指标分开的优点和缺点是什么?还是应该? :)
谢谢您的详细消息。之后我会执行并将其标记为答案。 – 2014-09-12 18:39:05