0
def self.group_by(field, format = 'day')
key_op = [['year', '$year'], ['month', '$month'], ['day', '$dayOfMonth']]
key_op = key_op.take(1 + key_op.find_index { |key, op| format == key })
project_date_fields = Hash[*key_op.collect { |key, op| [key, {op => "$#{field}"}] }.flatten]
group_id_fields = Hash[*key_op.collect { |key, op| [key, "$#{key}"] }.flatten]
pipeline = [
{"$project" => {"name" => 1, field => 1}.merge(project_date_fields)},
{"$group" => {"_id" => group_id_fields, "count" => {"$sum" => "$QtyUsed"}}},
{"$sort" => {"count" => -1}}
]
collection.aggregate(pipeline)<br>
end
當我執行該腳本,計數結果爲0。
我怎樣才能總和屬性QtyUsed?總和mongoid指定字段
你能請張貼樣本文件。 – BatScream 2014-12-02 05:28:12
該文檔具有字段名稱(字符串),QtyUsed(int)和DateIssued(日期),created_at(日期)和updated_at(日期)。 文件沒有嵌套文件。 – 2014-12-02 06:45:13