我有以下格式存储在couchbase中的文档:
{
"id" : 1,
"type" : "queueStat",
"timestampIN" : 1524131000000,
"timestampOut" : 1524131925000
}
我有一个队列,时间戳IN& OUT在进入和离开队列时得到更新。
Map功能是:
function (doc, meta) {
if (doc.id && doc.type && doc.type === "queueStat" ){
emit([doc.id, doc.timestampIN]);
}
}
我使用的查询有一个StartKey和一个EndKey,它们基于文档ID和时间戳IN。
这很好用,现在我想根据队列中花费的时间添加一个新的过滤器。我做了以下更改:
地图:
function (doc, meta) {
if (doc.id && doc.type && doc.type === "queueStat" ){
emit([doc.id, doc.timestampIN, doc.timestampOUT-doc.timestampIN]);
}
}
调用此新Map函数时,例如:
http://192.168.1.41:8092/default/_design/queue/_view/CalculateDiff?stale=false&startkey=["1", 1524131000000, 0]&endkey=["1", 1524131925000, 0]
它没有考虑我的第三个添加过滤器:(