Mongodb 如何获取按最顶层筛选的文档并对嵌入结果进行排序

Mongodb 如何获取按最顶层筛选的文档并对嵌入结果进行排序,mongodb,mongoose,mongodb-query,Mongodb,Mongoose,Mongodb Query,假设我有以下文档结构。 { "_id" : "ehbpidnopgpgcghgakiiiallielefonk", "users" : 11.87, "ratingTopMost" : { "average" : NumberInt("4"), "users" : NumberInt("3174"), }, "reviews" : { "average" : NumberInt("5"), "

假设我有以下文档结构。

{
    "_id" : "ehbpidnopgpgcghgakiiiallielefonk",
    "users" : 11.87,
    "ratingTopMost" : {
        "average" : NumberInt("4"),
        "users" : NumberInt("3174"),
    },
    "reviews" : {
        "average" : NumberInt("5"),
        "count" : NumberInt("51"),
        "comments" : [
            {
                "_id" : ObjectId("5b87b1a07267ad001da7e733"),
                "name" : "Batista1395",
                "comment" : "Great Stackoverflow",
                "datum" : ISODate("2017-01-16T00:00:00.000+01:00"),
                "rating" : NumberInt("3")
            },
            {
                "_id" : ObjectId("5b87b1a07267ad001da7e732"),
                "name" : "Tim Ace",
                "comment" : "I Like it.",
                "datum" : ISODate("2016-08-17T00:00:00.000+02:00"),
                "bewertung" : NumberInt("5")
            },
        ]
    },
}
我需要使用以下条件查询最多20个文档的顶部:

  • rantingTopMost.average的最高值
  • 排名TOPMOST.users的最高值
  • 评论的最高价值。计数
  • 评论的最高价值。平均值
  • 用户的最高价值
  • 优先级应从上到下(1到5)


    也很好:按Date DESC对嵌入的注释进行排序。

    预期的输出应该是什么?如代码所示。有大约200条与上述结构相同的记录。预期的输出应该是如上所示的记录,但符合上述条件