MongoDB Node.js按计算密钥分组
MongoDB Node.js group by calculated key
我是Mongo Node.js驱动程序的新手。我的问题是,我在Mongo中设置了一个时间戳(以毫秒为单位)字段,现在我尝试按秒对其进行分组。时间戳是一个数字(Int64),我想把它分组并除以1000进行计数。
我的MongoDB Shell查询运行良好:
db.default.group(
{
keyf: function(doc) {
var secs = (doc.timestamp/1000).toFixed();
return {'data':secs};
},
cond: {source:1},
initial: {count:0},
reduce: function(obj, prev) {prev.count++;}
})
我的问题是我无法处理Node.js查询:
var keyf = function(doc) {
var secs = (doc.timestamp/1000).toFixed();
return {'data': secs};
};
collection.group(keyf, {}, {"count":0},
"function(obj, prev){prev.count++;}", false, function(err,results) {
console.log(results);
});
看起来好像小组从未注意到keyf函数。有什么想法吗?
collection
上没有.group
方法,或者您必须使用型号
Model.find({}, function(err, docs) {
if(err) console.error(err);
if(!docs) console.log("No docs found!");
function updater(docs){
// Get first item of documents
doc = docs.unshift();
// Change
doc.timestamp = (doc.timestamp/1000).toFixed();
// Update
doc.save(function(err){
if(err)
console.log(err);
else
updater(docs);
});
}
// Update documents in async
updater(docs);
});
相关文章:
- API密钥使用和检查示例
- react.js中的密钥绑定
- JS对象密钥序列
- 似乎无法使用javascript从AWS 3S中删除密钥
- 加载两个具有相同父密钥名称的json文件
- 如何获取$data.Entity的密钥
- Angular ngRepeat:重复错误(尽管没有重复的密钥)
- CryptoJS和密钥/IV长度
- 基于api密钥的NodeJS web服务
- 输入密钥和firefox提示
- React Rails应用程序中动态子项的密钥分配问题
- 正在Javascript Cookie中设置重复密钥
- 通过localStorage中的密钥获取ID
- 从密钥中获取价值.JavaScript
- Javascript对象中的跨浏览器密钥查找性能
- D3动态json密钥名称
- OAuth 2.0 OpenID连接环回和密钥斗篷
- MongoDB Node.js按计算密钥分组
- 哈希表-给定密钥的哈希计算频率
- 使用openpgp.js计算公钥的密钥id