我有这样的集合:
{
"male_count": 500,
"female_count": 501
}
现在我想找到male_ratio
(male_ratio = male_count /(male_count + female_count)
),例如:
select (male_count / (male_count + female_count)) as male_ratio from collection_name
我怎么能在shell中做到这一点?
答案 0 :(得分:3)
将.aggregate()
与$project
阶段一起使用:
db.collection.aggregate([
{ "$project": {
"male_ratio": {
"$divide": [
"$male_count",
{ "$add": [ "$male_count", "$female_count" ] }
]
}
}}
])
.aggregate()
方法既可以访问operators来进行计算,也可以访问"更改"文件内容。 .find()
方法实际上只能选择"字段和"过滤"结果