MongoDB 【已解决】mongoid 实现 group by 问题

liangbin661831 · 2015年01月22日 · 最后由 liangbin661831 回复于 2015年01月22日 · 3977 次阅读

我参考这篇文章:http://www.dixis.com/?p=531 clone的rubychina的源码,打开console,

Reply.collection.group(:key => 'user_id', :initial => { :count => 0 }, :reduce => "function(doc, prev){prev.count += 1;}")

没有反应啊,大神们这是怎么回事啊? mongodb时启动的,rubychina可以在本地跑起来。 或者大神门赐教mongodb怎么做group by 比较好。

共收到 1 条回复

参考mongodb文档, 里面对map,reduce等概念解释的很清楚,下面是我的代码:

map = %{ function(){emit(this.topic_id, this.id)}} " function(){emit(this.topic_id, this.id)}"

reduce = %{ function(key, values){return values.length} } " function(key, values){return values.length} "

Reply.map_reduce(map, reduce).out(inline: true).each {|d| d} [{"_id"=>1.0, "value"=>2.0}]

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册