如何遍历mongo集合并更新字符串字段中的字符串?

时间:2019-02-12 17:06:40

标签: mongodb

我的mongo收集模型很简单,看起来像这样:

{
  "personId": 24449,
  "address": {
    "city": "6 RUE DE BAE 4765 PARIS"
  }
}

我发现在我的文档的20k中,有时在城市中有\\t\\r。我通过运行来找到它:

db.people.find({"address.city" : {$regex : ".*\\\\.*"}}})

,一些结果如下:

{ "personId" : 24449, "address" : { "city" : "7 RUE DE LA RHD 90875\\t  PARIS" } }
{ "personId" : 24699, "address" : { "city" : "15 RUE DU DURFIS 343\\t" } }
{ "personId" : 29029, "address" : { "city" : "\\r GOLDOR 00400\\r 7556N HENGELO OV\\r " } }
{ "personId" : 29032, "address" : { "city" : "Wallerbi 10\\r A-410 Bd Leonfeld" } }
{ "personId" : 29033, "address" : { "city" : "Feicubstr 4\\r A-442 Nubach" } }
{ "personId" : 29043, "address" : { "city" : "Schloferstr 60\\r A-201 Groß-Endorf" } }
{ "personId" : 29069, "address" : { "city" : "IMPERIAL HOTEL\\r TEL AVIV\\r RTL\\r \\r \\r WC" } }

我可以执行什么命令来越过它们并删除城市中的所有\\r\\t。意味着要对其进行更新。

1 个答案:

答案 0 :(得分:0)

您可以使用db.collection.deleteMany(),here是更多信息。