MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come ordinare i dati in Mongo in un ordine personalizzato

Puoi proiettare ciascuno degli hosting in un tipo separato denotato da numeri interi e infine ordina su questi numeri interi. Illustrato nella pipeline di aggregazione di seguito

[
{$lookup: {
    from: 'secondCollectionStoringQuality',
    localField: 'hosting',
    foreignField: 'hostings',
    as: 'nw'
    }},
{$unwind: '$nw'},
{$project: {
        domainName: 1,
        hosting: 1,
        type: {
            $cond: [
                {$eq: ['$nw.quality', 'best']},
                0,
                {$cond: [
                    {$eq: ['$nw.quality', 'good']},
                    1,
                    2
                    ]}
            ]
        }
    }},
    {$sort: {type: 1}}
]