1. 数组排序

1为升序排列,-1为降序排列
{
    "_id" : 1.0,
    "arr" : [ 
        3, 
        1, 
        5, 
        2, 
        6
    ]
}
db.getCollection('user').update(
    {"_id": 1.0},
    {$push: {"arr": {$each: [], $sort: 1}}}
)
结果
{
    "_id" : 1.0,
    "arr" : [ 
        1, 
        2, 
        3, 
        5, 
        6
    ]
}

2. 根据数组的某一项排序

初始
{
    "_id" : 1.0,
    "arr" : [ 
        {
            "a" : 5,
            "b" : 6
        }, 
        {
            "a" : 3,
            "b" : 6
        }, 
        {
            "a" : 2,
            "b" : 6
        }, 
        {
            "a" : 4,
            "b" : 6
        }, 
        {
            "a" : 5,
            "b" : 6
        }
    ]
}
// 根据数组arr的a属性升序排列
db.getCollection('user').update(
    {"_id": 1.0},
    {$push: {"arr": {$each: [], $sort: {"a": 1}}}}
)
结果
{
    "_id" : 1.0,
    "arr" : [ 
        {
            "a" : 2,
            "b" : 6
        }, 
        {
            "a" : 3,
            "b" : 6
        }, 
        {
            "a" : 4,
            "b" : 6
        }, 
        {
            "a" : 5,
            "b" : 6
        }, 
        {
            "a" : 5,
            "b" : 6
        }
    ]
}

results matching ""

    No results matching ""