gpt4 book ai didi

sorting - 如何根据每个文档中两个字段的比率对 MongoDB 查询进行排序?

转载 作者:可可西里 更新时间:2023-11-01 09:47:18 25 4
gpt4 key购买 nike

假设我有很多文档,例如 {'a' : x , 'b' : y}。假设 x 和 y 是整数。我怎样才能做类似 find().sort({'a'/'b'}) 的事情?

最佳答案

自2011年提出这个问题后,MongoDB就发布了聚合框架。它允许您按字段组合排序,并且您不需要存储(非规范化)任何额外的字段。这是如何完成的:

db.collection.aggregate([
{
$match: {
// Optional criteria to select only some documents to process, such as...
deleted: null
}
},
{
$project: {
// Need to prefix fields with '$'
ratio: { $divide: [ "$a", "$b" ] },
}
},
{
$sort: { ratio: -1 },
}
]);

就是这样。我们使用 $divide aggregation framework 的运营商.

关于sorting - 如何根据每个文档中两个字段的比率对 MongoDB 查询进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5110310/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com