假设有一个包含100个对象的MongoDB文档,我们想要保持数组长度固定为100。当一批新对象到达时(可以是1个、5个、10个等等),我们希望更新数组并删除相同数量的旧对象,以使数组长度保持不变。我选择从MongoDB中读取数组到我的应用程序中,进行一些修改,然后使用$set来更新数组,而不是写解释。
在MongoDB中,是否可以同时使用
var newData = [
{ ... },
{ ... },
{ ... },
{ ... },
{ ... }
];
var oldData = Collection.findOne({exchange: 'The Exchange', market: 'The Market'}).data;
newData = newData.concat(oldData).slice(0, 100);
Collection.update(
{
exchange: 'The Exchange',
market: 'The Market'
},
{
$set: {
data: newData
}
}
在MongoDB中,是否可以同时使用
$push
将新元素添加到前面,并使用$pop
从后面删除相同数量的对象?请注意,保留HTML标记。