Как использовать MongoDB Ruby Driver для создания «группы» (group by)?

относится кMongoDB Group с использованием драйвера Ruby

если я хочу сделать что-то вроде следующего в SQL:

select page_id, count(page_id) from a_table group by page_id

Я думал, что документ MongoDB говорит

http://api.mongodb.org/ruby/current/Mongo/Collection.html#group-instance_method

group(key, condition, initial, reduce, finalize = nil)
# returns an array

Итак, из другого поста я использую:

Analytic.collection.group(  "fucntion (x) return {page_id : x.page_id}", 
                            nil, 
                            {:count => 0},  
                            "function(x, y) { y.count++ }"  )

но это на самом деле возвращает

[{"count"=>47.0}] 

который является общим количеством записей (документов) в коллекции. Что-то не так? Я думал, что ключ может быть статической строкой, как в

http://kylebanker.com/blog/2009/11/mongodb-count-group/

db.pageviews.group(
{
 key: {'user.agent': true}, 
 initial: {sum: 0}, 
 reduce: function(doc, prev) { prev.sum += 1}
});

но это не в другом сообщении stackoverflow.

Обновить: на самом деле, в ссылке выше, решение, как

Analytic.collection.group(  ['page_id'], nil, 
  {:count => 0},  "function(x, y) { y.count++ }"  )

работает, но просто удивляюсь, почему первый метод в этом посте не сработал.

Ответы на вопрос(2)

Ваш ответ на вопрос