node.js - MongoDB 组查询在终端中工作,在 nodejs 文件中抛出错误

标签 node.js mongodb collections grouping

我有一个查询在查询我的 mongodb 集合的终端中运行良好,但是在我想要对数据进行分组的函数内部,我收到以下错误:

// QUERY WORKS:
/*
> db.twitterhashtags.group({ key: {"text":true}, initial: {sum:0}, reduce: function(doc, prev) {prev.sum +=1}});
 [
{
    "text" : "spnyc",
    "sum" : 1
},
{
*/
//RUNNING QUERY CAUSES THIS ERROR:
// TypeError: undefined is not a function
// at Collection.group.scope (/Users/propstm/Projects/nodeproject/node_modules/mongoskin/node_modules/mongodb/lib/mongodb/collection.js:1341:16)
//at g (events.js:185:14)

这是引发上面所示错误的代码行。

db.collection("twitterhashtags").group({ key: {"text":true}, initial: {sum:0}, reduce: function(doc, prev) {prev.sum +=1}});

最佳答案

驱动程序未 100% 遵循控制台约定。该文档有使用组的示例。

http://mongodb.github.com/node-mongodb-native/api-generated/collection.html#group

但是,如果它是一个新应用程序并且您使用的是 2.2,则不应使用组,除非必须使用聚合框架。

http://docs.mongodb.org/manual/aggregation/

关于node.js - MongoDB 组查询在终端中工作,在 nodejs 文件中抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12361148/

相关文章:

node.js - E11000 mongodb mongoose 中的重复键错误索引

Java,向列表添加一个值<pair>

mongodb - Pymongo 中的全文搜索

mongodb - 如何根据在文档上添加2个属性的值来搜索文档?

collections - 使用泛型创建集合对象

java - Java 中的排序列表,如 TreeMap 或 SortedSet

angularjs - 如何使主键/_id在 Mongoose 中可选输入

javascript - 浏览器内的Node JS fs模块

node.js - NodeJS Socket.io 变量未定义

node.js - 如何创建 http 将端口 80 上的 http 请求重定向到端口 443 上的 https?