我正在尝试计算我们数据库中跟踪的总花费金额。每个订单文档包含一个字段“total_price”
我正在尝试使用以下代码:
db.orders.aggregate({
$group: {
_id: null,
total: {$sum: "$total_price"}
}
})
不幸的是,我得到的唯一输出是:{ "result" : [ { "_id" : null, "total" : 0 } ], "ok" : 1 }
但要验证是否确实存储了数字数据,只是没有总计:db.orders.find()[0].total_price
这导致8.99
任何帮助将不胜感激。我使用 MongoDB 的经验很少。我目前只介绍了基础知识。
先感谢您。
$sum
仅适用于整型、长整型和浮点数。目前,没有运算符可以将字符串解析为数字,尽管这非常有用。您可以按照中所述自行执行此操作Mongo 转换所有存储为字符串的数字字段但这会很慢。
我建议您确保您的应用程序将数字存储为 int/long/float,并编写一个脚本来迭代所有文档并更新值。我还建议您添加功能请求https://jira.mongodb.org/browse/SERVER添加一个将字符串转换为数字的运算符。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)