我有一个带有一个名为“Confini”的GeoJSON三维坐标填充的字段的集合,我想为二维地理坐标查询编制索引,所以我需要通过删除第三个元素将其转换为二维坐标。
“Confini”字段如下所示:
"Confini" : {
"type" : "Polygon",
"coordinates" : [[[16.685926, 38.961437, 0.0], [16.685612, 38.961475, 0.0],[16.685926, 38.961437, 0.0]]]
}
我尝试了这个查询:
{ $pull: { "Confini.coordinates.0.$": 0.0 }}
var cursor = db.City.find({});
var i=0;
cursor.forEach(function(x){
db.City.update({ "Confini.coordinates.0" : x.Confini.coordinates } ,{ $pull: { x.Confini : 0.0}});
});
目的是删除坐标数组中每个项目的第三个元素,但它不起作用。谁能帮我?