0
我在蒙戈的对象(文件)与下面结构更新数组元素中蒙戈对象位置
{
'key1' : 'value1',
'key2' : 'value2',
'array1' : [5, 2, 10, 11]
}
现在我想通过交换2 第二和3 RD元件改变array1
作为[5, 10, 2, 11]
数组。
我该怎么做?
我在蒙戈的对象(文件)与下面结构更新数组元素中蒙戈对象位置
{
'key1' : 'value1',
'key2' : 'value2',
'array1' : [5, 2, 10, 11]
}
现在我想通过交换2 第二和3 RD元件改变array1
作为[5, 10, 2, 11]
数组。
我该怎么做?
那么,有很多方法来洗牌数组元素。你需要弄清楚哪一个最有效。
例如在你的情况下,修复客户端上的数组索引并向服务器发出一个更新请求会容易得多。
db.collection.update(
{key1:"value1", key2:"value2"},
{$set:{array1:[5,10,2,11]}}
)
随着上述查询的帮助下,你得到的文件将
{
"_id" : ObjectId("571dfcdce6d693e88c38242f"),
"key1" : "value1",
"key2" : "value2",
"array1" : [
5.0,
10.0,
2.0,
11.0
]
}
但是,如果你要的答案@Saleem做实验,看$position操作
谢谢,它解决我的问题。但是没有其他方法可以做到这一点,而不是设置完整的数组,只需改变数组元素的位置并保存完整的对象? – Dau