繁体   English   中英

如何使用 JavaScript 按 2 个特定字段自动对 MongoDB 数组进行降序排序

[英]How to automatically sort MongoDB arrays to be descending order by 2 certain fields with JavaScript

我正在尝试按降序对 MongoDB 数组进行排序。 我创建了一些 JavaScript 代码来获取所有文档并将它们转换为 JSON 数组,但我还需要将它们按降序排序。 这是我的代码:

const result = xpSchema.find({
             gid: '754542598957432943',
        });
        
        jsonString = JSON.parse(JSON.stringify(result));
        console.log(jsonString);

文件如下所示:

 {
    xp: 5,
    coins: 0,
    level: 1,
    _id: '5f9337a49b46164777c46905',
    gid: '754542598957432943',
    profilepic: null,
    userId: '712947234886647828',
    username: 'CoolUserName',
    __v: 0
  }

我需要按 XP 和 Level 字段对它们进行排序。 如果级别与不同的文档级别相同,则需要查看XP,查看XP字段更高的文档。 它需要放在上面的最高的。

关于如何做到这一点的任何想法?

谢谢 :)

试试这个查询。 要编写猫鼬等价物,请参阅文档。

https://mongoosejs.com/docs/api/aggregate.html

db.collection.aggregate([
  {
    "$match": {
      gid: "754542598957432943"
    }
  },
  {
    "$sort": {
      level: -1,
      xp: -1
    }
  }
])

这里是蒙戈游乐场

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM