MongoDB的 - 如何删除符合标准的最早的项目

问题描述 投票:1回答:1

比方说,这是我的收藏:

[
    {
        "SKU" : "123",
        "createdAt" : ISODate("2019-01-01T00:00:00.000Z"),
    },
    {
        "SKU" : "123",
        "createdAt" : ISODate("2019-02-11T00:00:00.000Z"),
    },
]

我可以删除这样的1元:

db.collection.deleteOne({SKU: '123'})

但我怎么可以指定我要删除最早的一个?

mongodb
1个回答
1
投票

你可以试试这个

    db.getCollection('test').find({SKU: '123'}).sort( { createdAt: 1 } ).limit(1).forEach(doc => 
        { 
            db.getCollection('test').remove({_id:doc._id})
        }
    )
© www.soinside.com 2019 - 2024. All rights reserved.