将javascript对象添加到mongodb查询

时间:2018-05-18 08:33:21

标签: 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     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不允许你这样做。

0 个答案:

没有答案