按嵌套属性排序

时间:2019-10-03 07:13:42

标签: node.js mongodb sorting

所以我在按嵌套属性排序时遇到问题。由于某种原因,它没有按我的要求对DESC进行排序。这是我的代码:

var inscripcionesDB = await Inscripcion.find({ username: usuarioDB._id, $or: [{ "estado": 'PENDIENTE' }, { "estado": 'CONFIRMADA' }] }, '-_id').populate({
        path: 'clase',
        select: 'horaApertura -_id', // **want to sort this property DESC**
        populate: {
            path: 'categoria',
            select: 'descripcion -_id'
        }
    }).sort({ 'horaApertura': -1 }) // **not sorting**

这就是我的回报:

{
    "inscripcionesDB": [
        {
            "estado": "PENDIENTE",
            "clase": {
                "categoria": {
                    "descripcion": "OPENBOX"
                },
                "horaApertura": "2019-10-18T13:00:00.363Z"
            },
            "username": "5d917b2cb531bc2a94a3d476",
            "__v": 0
        },
        {
            "estado": "PENDIENTE",
            "clase": {
                "categoria": {
                    "descripcion": "OPENBOX"
                },
                "horaApertura": "2019-10-18T14:00:00.363Z"
            },
            "username": "5d917b2cb531bc2a94a3d476",
            "__v": 0
        },
        {
            "estado": "CONFIRMADA",
            "clase": {
                "categoria": {
                    "descripcion": "FUNCIONAL"
                },
                "horaApertura": "2019-10-18T16:00:00.363Z"
            },
            "username": "5d917b2cb531bc2a94a3d476",
            "__v": 0
        }
    ]
}

所以我想通过DESC'horaApertura'订购它们。我在做什么错? 此外,无论如何,我可以减少该查询吗?我的意思是说,这是一种较短的方法?

提前谢谢!

0 个答案:

没有答案