向mongodb查询添加javascript对象
我有一个复杂的查询,它使用聚合框架和$sort子句,根据一些条件按从最好到最坏的顺序生成一个用户列表。例如向mongodb查询添加javascript对象,mongodb,Mongodb,我有一个复杂的查询,它使用聚合框架和$sort子句,根据一些条件按从最好到最坏的顺序生成一个用户列表。例如 const result = [u1, u2, u3]; 因此,这可以被视为: User Rank u1 1 u2 2 u3 3 我有一个包含用户、位置字段的集合。我想创建一个查询,以便将秩作为查询投影阶段的一部分附加到集合: User Location UserRank u1 China 1 u1 Brazil 1 u2 China
const result = [u1, u2, u3];
因此,这可以被视为:
User Rank
u1 1
u2 2
u3 3
我有一个包含用户、位置字段的集合。我想创建一个查询,以便将秩作为查询投影阶段的一部分附加到集合:
User Location UserRank
u1 China 1
u1 Brazil 1
u2 China 2
u3 Australia 3
然后使用min分组,以获得:
Location BestUserRank
China 1
Brazil 1
Australia 3
在聚合函数中使用min()很容易做到这一点,但首先我不知道如何将这些列组连接到查询中
我觉得我应该能够做到:
$project: {
user: 1,
location: 1,
rank: { $rank: { field: '$user', dictionary: rankDictionary }
}
但据我所知,mongodb不允许你做这样的事。不知道你在说什么。如果您显示MongoDB文档,以及您实际期望在这里发生的事情,就会更加清楚。编写“不存在的”伪代码对您的情况没有帮助,而且更可能被解释为非常简单。最接近的问题是如何加入两个mongodb集合。我在问如何将mongodb集合与javascript对象连接起来。看来我将不得不使用相同的map-reduce方法。