问题标签 [aggregation-framework]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - 如何使用 json API 在 mongo db 2.0.6 中编写简单的聚合查询
刚开始 mongo 并开始遇到查询问题。我有一个名为“externalTransaction”的集合,我想编写一个等效于这个 mysql 查询:
以下是我的尝试:
}
上面的查询给了我一个如下所示的结果集:
从带有版本的文档中,2.0.6
我还不能使用aggregation framework
如何处理像我在 mongo 中的简单查询。感谢您阅读并原谅我的问题的琐碎性。
php - mongodb聚合php
我正在使用 mongodb 2.1 以及如何将此查询转换为 php
谢谢
mongodb - Mongodb 聚合框架 | 分组多个值?
我想使用 mongoDB 的聚合框架来运行 SQL 中看起来有点像的东西:
文档状态:
您可以指定管道中文档中的单个字段、先前计算的值或由多个传入字段组成的聚合键。
但目前还不清楚“由几个传入字段组成的聚合键”实际上是什么?
我的数据集有点像这样:
我的查询如下所示:
我的直觉是尝试将结果传递给第二组,我知道您可以这样做,但它不会起作用,因为第一组已经过多地减少了数据集并且丢失了所需的细节级别。
我想要做的是分组使用label
,responseCode
并success
从结果中获取值的总和。它应该看起来有点像:
其中有五组:
ruby-on-rails - 如何按 _id 和国家/地区分组?
我需要按 _id 和国家/地区分组。我已经设法分组_id
,但想知道如何对这些国家/地区进行分组_id
并返回每个国家/地区的计数。
我正在使用聚合框架。到现在为止还挺好。
以下返回:
ruby-on-rails - 与 Mongoid 聚合
MongoDB 有一个新的聚合框架,我正在尝试弄清楚如何将它与 Mongoid 一起使用。似乎有一个具有此功能的 Moped 分支,如此处所述。我已经更新到 MongoDB 2.2 并尝试在我的应用程序上安装这个 Moped 分支,如下所示:
宝石'轻便摩托车',git:'git://github.com/mongoid/moped.git',分支:'聚合支持'
但聚合仍然不起作用。这是我用来测试它的调用:
= Post.all.aggregate({ "$group" => { "_id" => "$_id" } })
更新
在 mongo shell 中,这是有效的:
db.users.aggregate({ $group : { _id : "$_id" }})
所以我认为这是一个 Mongoid 问题......任何关于此的词都会很棒!
mongodb - Mongodb聚合:如何仅返回数组的匹配元素
在我的 mongoDB 书籍收藏中,我的文档结构如下:
我执行以下正则表达式查询以查找具有一个以 "Par" 开头的 indexToken 的所有文档:
如果我只选择要返回的 indexTokens 字段,如下所示:
生成的 DBObject 是
我想得到的只是与正则表达式匹配的令牌/标签(此时我不关心检索文档,我也不需要匹配文档的所有标签)
这是在 MongoDB v2.2 下发布的新聚合框架的情况。?
如果是,我该如何修改我的查询,以便实际结果如下所示:
{ "indexTokens" : ["Paris", "Paradise River", "Parma" 等 ....]}
额外的问题(你有 codez):我如何使用 Java 驱动程序来做到这一点?
现在我的java看起来像:
谢谢 :)
编辑:
根据您的回答,我修改了我的 JAVA 代码,如下所示:
哪个输出
这是天才!
非常感谢 !
mongodb - MongoDB aggregation comparison: group(), $group and MapReduce
I am somewhat confused about when to use group(), aggregate with $group or mapreduce. I read the documentation at http://www.mongodb.org/display/DOCS/Aggregation for group(), http://docs.mongodb.org/manual/reference/aggregation/group/#_S_group for $group.. Is sharding the only situation where group() won't work? Also, I get this feeling that $group is more powerful than group() because it can be used in conjunction with other pipeline operators from aggregation framework.. How does $group compare with mapreduce? I read somewhere that it doesn't generate any temporary collection whereas mapreduce does. Is that so?
Can someone present an illustration or guide me to a link where these three concepts are explained together, taking the same sample data, so I can compare them easily?
EDIT:
Also, it would be great if you can point out anything new specifically in these commands since the new 2.2 release came out..
php - php mongodb聚合(断言13111错误)
我正在尝试使用 php 中的新 mongodb 聚合框架。
我在 OSX Mountain Lion 上使用 mongod v2.2、php 5.3.13 和 mongodb pecl 库 v1.3.0beta2
我在门口跌跌撞撞...
我从 php 文档页面中获取了其中一个示例并将其缩减为...
当我查看页面时,我的 mongod 出现错误...
断言 13111::字段(管道)3 的错误类型!= 4
我一辈子都看不到代码有什么问题。
如果我db.zips.aggregate({$group : {'_id': "$state"}})
在 mongo 控制台中运行它工作正常。
mongodb - 使用 MongoDB 的新聚合框架搜索和计算标签的有效方法?
我正在尝试使用新的 AF 从 Map/reduce 迁移。我有数百万这样的对象:
我想做一份报告,其中包含所有者为 X 的“猫”和“鱼”的所有匹配项。
到目前为止,我的管道假设输入标签 ["cat", "fish"] 看起来像:
第一个 $match 只是缩小到所有这些百万对象的一个子集——因为我有一个关于所有者和“tags.txt”的索引。
该管道对于少量标签的功能很好,但我需要能够传入 100-1000 个“标签”并获得快速结果。似乎将所有标签投影出来并展开一定是低效的,只是在下一个匹配步骤中过滤了 90% 的方式。
有没有更有效的方法?也许重新排序管道步骤?