mongodb更新查询以将数据附加到现有字段

时间:2018-06-07 06:15:02

标签: mongodb mongodb-query pymongo insert-update

对于Web应用程序表单,我试图通过单击提交将数据添加到mongo集合。我的mongo系列如下:

collection1:

 { "_id" : ObjectId("56e0a3a2d59feaa43fba49d5"), "timestamp" : ISODate("2017-11-18T10:23:29.620Z"), "City" : "London ", "LDE" :  "LDE-1234, LDE-345, LDE-456" }
 { "_id" : ObjectId("56e0a3a2d59feaa43fba49d6"), "timestamp" : ISODate("2016-12-18T10:23:29.620Z"), "City" : "Berlin", "LDE" : "LDE-444, LDE-3445, LDE-456" }
 { "_id" : ObjectId("56e0a3a2d59feaa43fba49d7"), "timestamp" : ISODate("2016-12-18T10:23:29.620Z"), "City" : "Dublin", "LDE" : "LDE-444, LDE-3445, LDE-7899, LDE-0909" }

在我的form.html中我有2个输入(城市和LDE)  向db collection1添加值的两种可能性是

相同的城市,但新的LDE值,然后验证LDE是否存在并从集合更新文档。 New City,然后将其插入collection1。

我正在尝试的更新查询如下:

 db.collection1.update({"City": "Dublin"}, { '$set' : {"LDE": "LDE-4443"}}), 

将集合更改为:      {“_ id”:ObjectId(“56e0a3a2d59feaa43fba49d7”),“timestamp”:ISODate(“2016-12-18T10:23:29.620Z”),“City”:“Dublin”,“LDE”:“LDE-4443”}

我想要的是:

 { "_id" : ObjectId("56e0a3a2d59feaa43fba49d7"), "timestamp" : ISODate("2016-12-18T10:23:29.620Z"), "City" : "Dublin", "LDE" : "LDE-444, LDE-3445, LDE-7899, LDE-0909, LDE-4443" }

此外,可以在一个查询中完成插入和更新,具体取决于City值(不包含for或if循环)

0 个答案:

没有答案